所以我有这段代码,我只是想在另一个目录中列出保存列表,其中 php 脚本位于 xampp 文件夹中,并且保存到此路径 /root/files/saves
:
<html>
<body>
<?php
$output = shell_exec('ls /root/files/saves');
echo "<pre>$output</pre>";
?>
</body>
</html>
我不知道为什么我不能让它在 var_dump
上运行它似乎输出为空我真的很困惑它应该工作或者我完全错了我需要一些帮助。
最佳答案
将 2>&1
添加到您的 shell 命令的末尾,以返回 STDERR
以及 STDOUT
。
$output = shell_exec("ls /root/files/saves 2>&1");
此外,如果运行 PHP 的用户没有足够的权限查看 /root/
中的输出,上述代码将返回一个 Permission denied
错误消息。
关于php - shell_exec() 在 "ls"上返回 null,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18241305/