我尝试在下面的 php 中执行命令 linux :
exec('asterisk -rx "core show channels"',$out);
print_r($out);
但是,没有显示任何内容。如果您使用以下代码。
exec('ls -la',$out);
print_r($out);
浏览器在控制台中显示输出。可以帮忙吗??
最佳答案
正如 @Gerald Schneider 所说,您可以尝试重定向 stderr 以捕获可能的错误:
exec('asterisk -rx "core show channels 2>&1"',$out);
但我怀疑 Asterisk 二进制文件不在 $PATH
中,或者至少不在 PHP 解释器可访问的路径中。
您可以尝试插入完整路径(通常为/usr/sbin/asterisk
):
exec('/usr/sbin/asterisk -rx "core show channels 2>&1"',$out);
关于php在linux中执行 Asterisk 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24157268/