我对此代码感到头疼:
$data = shell_exec("wget -S --spider http://dkphp.com");
echo "Encoded:" .$data;
$ data为“NULL”
我不知道为什么,它支持回声如下:(今天花了5个小时,它仍然是NULL :(
HTTP request sent, awaiting response...
HTTP/1.0 200 OK
Date: Thu, 29 Sep 2011 01:31:45 GMT
Server: LiteSpeed
Connection: close
X-Powered-By: PHP/5.3.8
Set-Cookie: PHPSESSID=50781d657c7632cc1b2e7536d5fa0c50; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0,
Pragma: no-cache
content: text/html
Content-Type: text/html
Length: unspecified [text/html]
200 OK
答案 0 :(得分:3)
我在PHP的交互模式下检查了你的代码片段(php -a
从命令行)
wget将该信息打印到STDERR,而不是STDOUT。
这有效:
$data = shell_exec("wget -S --spider http://dkphp.com 2>&1");
echo "Encoded:" .$data;