Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
shell_exec和PHP上的exec没有';t返回字符串_Php_Apache_Shell - Fatal编程技术网

shell_exec和PHP上的exec没有';t返回字符串

shell_exec和PHP上的exec没有';t返回字符串,php,apache,shell,Php,Apache,Shell,我被这个密码弄得头疼: $data = shell_exec("wget -S --spider http://dkphp.com"); echo "Encoded:" .$data; $data为“空” 我不知道为什么,它对echo的支持如下:(今天花5个小时,但仍然无效:( 我在PHP的交互模式下检查了您的代码片段(PHP-a,从命令行) wget将该信息打印到STDERR,而不是STDOUT 这项工作: $data = shell_exec("wget -S --spider http:

我被这个密码弄得头疼:

$data = shell_exec("wget -S --spider http://dkphp.com");
echo "Encoded:" .$data;
$data为“空”

我不知道为什么,它对echo的支持如下:(今天花5个小时,但仍然无效:(


我在PHP的交互模式下检查了您的代码片段(
PHP-a
,从命令行)

wget将该信息打印到STDERR,而不是STDOUT

这项工作:

$data = shell_exec("wget -S --spider http://dkphp.com 2>&1");
echo "Encoded:" .$data;

您是否在安全模式下运行PHP?根据PHP手册,如果在安全模式下运行,该命令将被禁用。您能给我发送任何链接以了解STDERR和STDOUT吗?您可能会发现本文很有帮助:。此外,在linux shell中还有重定向流的标准方法。这一方法解释了我在上面的建议,在t STDERR流被重定向到STDOUT流。(shell_exec读取它)
$data = shell_exec("wget -S --spider http://dkphp.com 2>&1");
echo "Encoded:" .$data;