PHP 获取文件内容

来源:互联网 发布:美女网络直播间 编辑:程序博客网 时间:2024/06/17 08:14

验证function的时候发现在使用局域网网关的时候,页面响应时间过长,究其原因是从服务器读取文件失败导致。使用的是file_get_contents(),后来换了curl之后,问题便解决了。

PHP获取文件内容有三种方法:

1. 直接用函数file_get_contents()。该方法获取本地文件内容时比较方便,在获取远程文件时,若网络不通,而又没有timeout,则页面响应时间过长,造成假死。

$contents = file_get_contents($url);

2.curl:原本是Linux下的一个文件传输工具,支持多种协议,如常用的HTTP,HTTPS,FTP,FTPS,TELNET。目前PHP支持CURL库进行文件传输,使用步骤如下:

初始化cURL句柄

设置变量

执行并获取结果

释放cURL句柄

      $ch = curl_init();$timeout = 5;curl_setopt($ch, CURLOPT_URL, VERSION);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);$contents = curl_exec($ch);curl_close($ch);

在网络不通的情况下,通过设置timeout能有效结束响应。

3.如C++中对文件的操作:fopen,fread,fclose。此方法仅在C++中打开过本地文件,在PHP中打开远程文件未试过。

	
				
		
原创粉丝点击