首頁  >  文章  >  後端開發  >  php函數不能用

php函數不能用

藏色散人
藏色散人原創
2019-10-30 09:46:103145瀏覽

php函數不能用

php函數不能用?

問題闡述

PHP 無法執行system()函數是什麼原因呢?

問題解答

PHP 無法執行system()函數,可能有以下幾種情況:

(1)Warning: system() has been disabled for security reasons

該錯誤是由於伺服器安全配置將system 函數關閉了,打開php.ini 文件,將disable_functions等號後面的system 去掉即可。

(2)Warning: system() [function.system]: Unable to fork

該錯誤是由於目前網站的執行帳號無法存取cmd.exe,找到Windows\system32\cmd .exe 屬性,新增目前網站的執行帳號權限或users 群組權限即可。

(3)在Web 存取下執行沒有任何回應也不報錯,使用php cli 命令列執行卻可以正常回傳結果,該錯誤一般是由Windows 系統路徑引起的,程式中可能是使用了絕對路徑去存取程序,例如:

system('D:\server\DLL\IECapt.exe --url=http://tech.cncms.com --out="D:\web\tt.fei.cn\htdocs\ttt\tech.png"');

此時用命令列執行結果正確,但用Web 存取就會傳回空白頁,沒有錯誤。

修改方法:將檔案的存取路徑改為相對路徑,並將IECapt.exe 複製到網站程式目前目錄下,並將程式碼改為:

system('IECapt.exe --url=http://www.baidu.com --out=t/tech.png');

3再次造訪頁面,就可以正常輸出了。

更多PHP相關知識,請造訪PHP中文網

以上是php函數不能用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:php還是js好下一篇:php還是js好