> 백엔드 개발 > PHP 튜토리얼 > 大虾!帮我看看这个娶图函数到底出错在哪~

大虾!帮我看看这个娶图函数到底出错在哪~

WBOY
풀어 주다: 2016-06-23 14:09:31
원래의
843명이 탐색했습니다.

function get_content_by_socket($url){ $url = eregi_replace('^http://', '', $url);$temp = explode('/', $url);$host = array_shift($temp);$url = ''.implode('/', $temp);$temp = explode(':', $host);$host = $temp[0];$port = isset($temp[1]) ? $temp[1] : 80;//echo $url;//echo $host;   $fp = fsockopen($host, 80) or die("Open ". $url ." failed");     $header = "GET /".$url ." HTTP/1.1\r\n";     $header .= "Accept: */*\r\n";     $header .= "Accept-Language: zh-cn\r\n";    $header .= "Accept-Encoding: gzip, deflate\r\n";    $header .= "If-Modified-Since: Tue, 06 Apr 2010 07:56:03 GMT; length=2235\r\n";     $header .= "User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; GTB6.4)\r\n";     $header .= "Host: ". $host ."\r\n"; 	$header .= "Referer: http://video.baidu.com/v?word=11&ct=301989888&rn=20&pn=0&db=0&s=0&fbl=800\r\n"; 	//fputs($content, "Referer: $domainrn");//伪造部分     $header .= "Connection: Keep-Alive\r\n";     $header .= "Cookie: BAIDUID=5F96971273579588527A980F307E8B7A:FG=1\r\n\r\n";     //$header .= "Connection: Close\r\n\r\n";     fwrite($fp, $header);     while (!feof($fp)) {         $contents .= fgets($fp, 8192);     }     fclose($fp);     return $contents; } 
로그인 후 복사



函数可以正常使用 但是取图的速度非常慢

而且当同时取三到四张时就一张也取不到


回复讨论(解决方案)

能运行就表示没有错了,运行慢可能与网络有关

就函数本身而言:
eregi_replace 已经列在废止系列中,应改用 preg_replace
php 提供有 parse_url 函数,用于分析 url。不再需要用字符串函数和数组函数自己处理
百度的图片有防盗链保护,你发送固定的 cookie 似乎是不对的

能运行就表示没有错了,运行慢可能与网络有关

就函数本身而言:
eregi_replace 已经列在废止系列中,应改用 preg_replace
php 提供有 parse_url 函数,用于分析 url。不再需要用字符串函数和数组函数自己处理
百度的图片有防盗链保护,你发送固定的 cookie 似乎是不对的

之前我可能关闭了这行
//$header .= "Connection: Close\r\n\r\n";  
然后我开启这行之后 速度快了很多

不过还是有问题 比如以下开启 四五张 所有的都是获取到的事147K的文件 是不是百度服务器限制 

你给几个要取的图片的url,我测试一下

你给几个要取的图片的url,我测试一下

函数没问题了

自己的一些小错误 造成的 谢谢版主~

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿