php システムが実行されない問題の解決策: 1. disable_functions 等号の後のシステムを削除します; 2. 現在のサイトの実行中のアカウント権限を追加します; 3. ファイルのアクセス パスを次のように変更します。相対パスを指定し、IECapt を変更します。 .exe をサイト プログラムの現在のディレクトリにコピーするだけです。
この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、Dell G3 コンピューター。
php システムが実行できない場合はどうすればよいですか? PHP が system() 関数を実行できない問題を解決するにはどうすればよいですか?
問題の説明
PHP が system() 関数を実行できないのはなぜですか?
回答
PHP は system() 関数を実行できません。次の状況が考えられます:
(1) 警告: system() には次のような問題があります。セキュリティ上の理由により無効になっています
このエラーは、サーバーのセキュリティ構成がシステム機能をオフにしていることが原因です。php.ini ファイルを開いて、disable_functions 等号の後のシステムを削除してください。
(2)警告: system() [function.system]: フォークできません
このエラーは、現在のサイトの実行アカウントが cmd.exe にアクセスできず、Windows\ が見つからないことが原因です。 system32\cmd .exe 属性に、現在のサイトの実行アカウント権限またはユーザー グループ権限を追加するだけです。
(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 中国語 Web サイトの他の関連記事を参照してください。