[英]Calling shell_exec shows weird behavior from php
下面的PHP代碼工作,我得到輸出:
<?php
echo 'hello world';
echo shell_exec('ls -la');
?>
// Output
hello worldtotal 2064 drwxrwxrwx. 3 root root 4096 Jul 4 10:26 . drwxr-xr-x. 4 root root 4096 Jul 4 10:17 .. -rw-rw-r--. 1 arun arun 2089447 Jul 3 11:09 cakephp-cakephp-2.3.6-0-gd10df32.zip -rw-r--r--. 1 root root 32 Jun 18 18:01 info.php drwxrwxrwx. 7 arun arun 4096 Jul 3 12:23 nykkos -rw-r--r--. 1 arun arun 76 Jul 4 10:26 test.php
以下代碼不起作用:
<?php
echo 'hello world';
echo shell_exec("java -jar /var/www/html/nyk/app/webroot/Converter.jar $id");
?>
它只顯示空白屏幕。 即使在上述php代碼中使用簡單的java -version,也會出現空白屏幕。 甚至“ hello world”也不會被打印出來。
鑒於以上討論的Java命令可以正常運行,而終端沒有任何問題。 我的操作系統是fedora。
這種奇怪行為的背后是什么原因,我該如何克服?
任何幫助深表感謝。
我在OSX上使用MAMP時遇到此問題。 我認為應該是同一問題。 嘗試打開MAC中MAMP / Library / bin / envvars上的文件envvars。 嘗試注釋if和else的四行。 這看起來像:
#if test "x$DYLD_LIBRARY_PATH" != "x" ; then
# DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib:$DYLD_LIBRARY_PATH"
#else
# DYLD_LIBRARY_PATH="/Applications/MAMP/Library/lib"
不要忘記重置Apache。 這對我來說可以! 希望您能喜歡。 好幸運!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.