Php shell_exec()在codeigniter中不工作
shell_exec()在codeigniter中不工作。但是,这个命令在终端中工作。 输出:00:00:30.11Php shell_exec()在codeigniter中不工作,php,shell,codeigniter,Php,Shell,Codeigniter,shell_exec()在codeigniter中不工作。但是,这个命令在终端中工作。 输出:00:00:30.11 $input=“/opt/lampp/htdocs/images/fish5.flv”; $time=shell_exec(“ffmpeg-i$input 2>&1 | grep'Duration'| cut-d''-f4 | sed s/,/” 如何解决此问题?当您调试必须执行shell_exec()的web应用程序时,您应该会看到详细的错误。你试过这个吗?(来自浏览器的控制台
$input=“/opt/lampp/htdocs/images/fish5.flv”;
$time=shell_exec(“ffmpeg-i$input 2>&1 | grep'Duration'| cut-d''-f4 | sed s/,/”代码>
如何解决此问题?当您调试必须执行shell_exec()的web应用程序时,您应该会看到详细的错误。你试过这个吗?(来自浏览器的控制台)
可能您正试图访问权限受限的文件夹(运行web服务器的用户无法访问该目录)。使用chmod
授予您的Web服务器访问此目录的权限,然后再次尝试运行您的命令。它应该会起作用
Alex“不工作”不是一个有用的诊断。发生了什么事?您是否已检查错误记录/报告是否正确配置为捕获错误?你的日志里有什么
“这个命令在终端工作”-你是什么意思?您只是在运行传递给shell_exec的字符串,还是在从命令行运行PHP脚本?后者将显示shell_exec是否被排除在外(但请注意,CLI SAPI可能使用与web SAPI不同的php.ini)
除此之外,潜在原因还有:
- 对数据文件的权限
- 对可执行文件的权限
- 未填充PATH变量以引用Web服务器环境中的可执行文件
- Web服务器可能正在运行chroot
- SELinux/Apparmor限制
命令行结果,而我们在codeigniter api中得到空,$input=“/opt/lampp/htdocs/images/fish5.flv”$time=shell_exec(“ffmpeg-i$input 2>&1 | grep'Duration'| cut-d''-f4 | sed s/,/”;为什么会有反对票?这是一个支持性问题。