使用PHP读取远程文件的四种方法
来源:互联网 发布:淘宝v5会员消费多少钱 编辑:程序博客网 时间:2024/06/07 03:58
转自:http://www.qiandabao.com/wdgz/47.html
使用PHP读取远程文件的四种方法
1 fopen()
2 file_get_contents()
3 curl
4 socket
fopen()和file_get_contents()需要在php.ini配置文件中设置allow_url_open = on
fopen():
$handle = fopen("http://www.example.com/", "rb");$contents = "";while (!feof($handle)) { $contents .= fread($handle, 8192);}fclose($handle);
file_get_contents():
$contents = file_get_contents("http://www.example.com/");
Curl:
if (function_exists('curl_init')) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, 'http://www.example.com'); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 5.1;)'); $contents = curl_exec($ch); curl_close($ch);}
Socket:
function getRemoteFile($url) { $parsedUrl = parse_url($url);$host = $parsedUrl['host'];if (isset($parsedUrl['path'])) { $path = $parsedUrl['path'];} else { $path = '/'; } if (isset($parsedUrl['query'])) { $path .= '?'.$parsedUrl['query'];}if (isset($parsedUrl['port'])) { $port = $parsedUrl['port']; } else { $port = 80; } $timout = 10; $response = ''; $fp = @fsockopen($host, $port, $errno, $errstr, $timout); if (!$fp) { echo "Connect to $url failed"; } else { fputs($fp, "Get $path HTTP/1.0\r\n". "Host: $host\r\n". "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1;) \r\n". "Accept:*/*\r\n". "Accept-Language: zh-CN, zh;q=0.5\r\n". "Accept-Charset: GB-2312, utf-8;q=0.7,*'q=0.7\r\n". "Keep_Alive: 300\r\n". "Connection: keep-alive\r\n". "Referer: http://$url\r\n\r\n"); while ($line = fread($fp, 4096)) { $response .= $line; }fclose($fp); $pos = strpos($response, "\r\n\r\n"); $response = substr($response, $pos +4); } return $response;}
- 使用PHP读取远程文件的四种方法
- PHP读取远程文件的三种方法
- PHP读取远程文件的三种方法
- PHP读取远程文件的三种方法
- 使用dom4j四种读取xml文件的方法
- 使用dom4j四种读取xml文件的方法
- 使用dom4j四种读取xml文件的方法
- Java文件读取的四种方法
- php读取文件的几种方法
- php读取远程xml文件
- php使用fsockopen方法代理读取远程网页
- java读取xml文件的四种方法
- Java读取xml文件的四种方法
- Java读取xml文件的四种方法
- Java读取xml文件的四种方法
- java读取xml文件的四种方法
- Java读取xml文件的四种方法
- Java读取xml文件的四种方法
- S5PV210 FIMC驱动和v4l2驱动框架学习
- 【转】国家集训队论文分类整理
- Unity3D仿电影字幕
- 【discuzX2】/source/function/function_forum.php论坛模块通用函数集合分析
- 【Cocos2d-X开发学习笔记】第16期:动作类之缓冲动作和组合动作的使用
- 使用PHP读取远程文件的四种方法
- 在android init.xxx.rc中启动shell脚本
- 如何在有http代理的局域网内建立ubuntu源镜像
- 策划了个.NET控件的案例大赛
- P05二维背包问题
- jquery属性
- PHP中使用AMQP消息队列
- ffmpeg 保存流媒体
- linux top VIRT RES SHR SWAP DATA内存参数详解