ホームページ バックエンド開発 PHPの問題 php の system() が出力を返さない場合はどうすればよいですか?

php の system() が出力を返さない場合はどうすればよいですか?

Sep 27, 2021 pm 02:41 PM
php system() 出力

php の system() が出力を返さない問題の解決策: コマンドに [2 >& 1] を追加して、標準エラーを標準出力にリダイレクトします (例: [exec('some_command - - オプション 2>& 1'、$output、$ret);]。

php の system() が出力を返さない場合はどうすればよいですか?

#この記事の動作環境: Windows10 システム、php 7、thinkpad t480 コンピューター。

最近仕事をしているときに、「ls」や exec() などの一般的なコマンドを実行すると正常に動作することを偶然発見しました。たとえば、

 exec('ls',$输出,$ retval); 
 var_dump($ output,$ retval); 
 // $ output包含文件名数组,retval === 0

しかし、別のプログラムを実行しようとすると、次のように出力を取得できません:

exec('some_command --a_parameter',$ output ,$ retval); 
 var_dump($ output,$ retval); 
 // $ output包含一个空数组,结束$ retval === 0

コマンド ラインからコマンドを直接実行すると、いくつかの行が出力されます。コマンドの実行が成功したことがわかり、結果 (一部のファイル) が表示されます。更新、データ追加など) が行われますが、出力は表示されません。

exec() 関数は標準出力のみをキャプチャします。標準エラーが常に Apache エラー ログに送信されるかどうかはわかりませんが、可能であるようです。

UNIX システムを使用する必要がない場合は、コマンドに 2>& 1 を追加することで標準エラーを標準出力にリダイレクトできるため、問題を解決できます。次に例を示します。

 exec('some_command --option 2>& 1',$ output,$ ret);

推奨学習:

phpトレーニング

以上がphp の system() が出力を返さない場合はどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Stock Market GPT

Stock Market GPT

AIを活用した投資調査により賢明な意思決定を実現

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ホットトピック

Mantianxing ComicsフルバージョンEntann_mantianxingコミック広告スペシャルエディションリンク Mantianxing ComicsフルバージョンEntann_mantianxingコミック広告スペシャルエディションリンク Sep 28, 2025 am 10:30 AM

Mantianxing Comicのフルバージョンはhttps://www.mantianxingmh.comです。このプラットフォームは、情熱、愛、サスペンス、サイエンスフィクションなどのさまざまなテーマをカバーし、豊富なリソースとタイムリーな更新と分類された検索をサポートしています。高解像度の画質、複数のページターニングモード、カスタムバックグラウンドと輝度の調整を提供し、読書体験を最適化するための目の保護モードを備えています。ユーザーは、本棚を作成し、レコードの読み取りを保存し、オフラインをダウンロードし、クロスデバイスの同期の進行状況を達成できます。

PHPでオブジェクト指向プログラミング(OOP)を使用する方法は? PHPでオブジェクト指向プログラミング(OOP)を使用する方法は? Sep 28, 2025 am 03:26 AM

oopinphporgasizeIntoreUsableClassEsandobjects.1.ClassesDefinePropertiesAndMethods、InstantiatedVia $ this.2.constructors(__ construct)initializeObjectProperties.3.AccesSmodifiers(Public、Private、Protected)Controlvisibility.4.Inheritance

PHPを使用してファイルを削除する方法は? PHPを使用してファイルを削除する方法は? Sep 27, 2025 am 06:08 AM

Unlink()関数を使用して、PHPでファイルを削除します。ファイルパスが正しく、サーバーに権限の書き込みがあることを確認する必要があります。削除する前に、ファイルが存在することを確認し、パスが悪意を持って操作されないようにする必要があります。

PHP mysqlで最後に挿入されたIDを取得するにはどうすればよいですか? PHP mysqlで最後に挿入されたIDを取得するにはどうすればよいですか? Sep 28, 2025 am 05:57 AM

mysqli_insert_id()(手順スタイル)、$ mysqli-> insert_id(オブジェクトスタイル)、または$ pdo-> lastinsertid()()を使用して、最後に挿入されたIDを取得し、同じ接続ですぐに呼び出される必要があります。

PHPで最終クラスとメソッドを使用する方法は? PHPで最終クラスとメソッドを使用する方法は? Sep 28, 2025 am 05:55 AM

finalClassESSANDMETHODSINPPREVENTINTANCHENDOVERIDINGTOPROTECTCRITICLICODE.2.AFINALCLASSCANNOTBEEXTEDED.3.AFINALMETHODCANNOTBEOVERDINDCANTCONSTIMPRENTIONSACROSSSUBCLASSES.4.USEFINFINEFORESTURET

PHPでHTMLタグをエコーする方法 PHPでHTMLタグをエコーする方法 Sep 29, 2025 am 02:25 AM

PHPにHTMLを出力するために、単一の引用符または脱出した二重引用符を使用します。属性の引用符の競合を避けるために、文字列を単一の引用符で巻くことをお勧めします。動的なコンテンツは、可変スプライシングまたはHeredoc構文と組み合わせて生成できます。

PHPでGet Request変数を操作する方法は? PHPでGet Request変数を操作する方法は? Sep 29, 2025 am 01:30 AM

$ _gettoaccessurlquelystringvariablesinphpを使用します。

PHPでシングルトンクラスを作成する方法は? PHPでシングルトンクラスを作成する方法は? Sep 27, 2025 am 06:18 AM

asingletonclassinphensuresonlyonlyOneinStanceSistsistsistcrivateConstructor、cloninging andunserialization、およびProviding aglovididing agloviding aglablaCesspopeastaticmethodthaturturnturturntherinsingLeinStanceStoredOredOREDINAPRIVATETATITATITY。

See all articles