【发布时间】:2015-11-22 01:15:08
【问题描述】:
我目前正在调试一些代码,但出现错误:ls: invalid option -- '/'。但是,如果我在终端中尝试 $somePath 的值,它会给我结果。为什么我会收到错误消息?
PHP:
exec('ls -A' . $somePath.' | grep .', $output);
终端路径:
ls -A /home/userName/public_html/path/folder
【问题讨论】:
我目前正在调试一些代码,但出现错误: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'、... 它只是不接受 '/' 字符。
【讨论】: