PHP exec ls 问题
PHP exec ls issue
我目前正在调试一些代码,但出现以下错误:ls: invalid option -- '/'
。但是,如果我在终端中尝试 $somePath
的值,它会给出结果。为什么我会收到错误消息?
PHP:
exec('ls -A' . $somePath.' | grep .', $output);
终端路径:
ls -A /home/userName/public_html/path/folder
可能你的意思是:
exec('ls -A ' . $somePath . ' | grep .', $output);
// SPACE --^
当 getopt 解析以“-”开头但不以“--”开头的选项时,它会将每个字符视为另一个选项。它以为你传递了选项:'A'、'/'、'h'、'o'、...它只是不接受 '/' 字符。
我目前正在调试一些代码,但出现以下错误:ls: invalid option -- '/'
。但是,如果我在终端中尝试 $somePath
的值,它会给出结果。为什么我会收到错误消息?
PHP:
exec('ls -A' . $somePath.' | grep .', $output);
终端路径:
ls -A /home/userName/public_html/path/folder
可能你的意思是:
exec('ls -A ' . $somePath . ' | grep .', $output);
// SPACE --^
当 getopt 解析以“-”开头但不以“--”开头的选项时,它会将每个字符视为另一个选项。它以为你传递了选项:'A'、'/'、'h'、'o'、...它只是不接受 '/' 字符。