現在、echo exec("python programFilePath $variables");
でPHP経由で呼び出されているバックエンドサーバープログラムがあります。この方法はうまくいきましたが、Pythonプログラムに新しいコンポーネントを追加しました。この新しいコンポーネントはWeb要求を行い、必要なデータが端末の出力画面に出力されます。非同期に実行されるプログラムからPHPの表示データを取得するにはどうすればよいですか?
残念ながら、php echo exec
関数は、このデータを印刷しません。表面的には、Pythonの美しいスープモジュールが要求を非同期に実行するためです。明らかに、これは主要な動的コンポーネントが機能しない場合にウェブページを壊す。
どのようにPHPをプログラムを実行させるだけでなく、それはデータを表示することができますか?
編集
Here is the code for the problematic python script I am trying to run.
IDLEまたは端子を介して実行したときにそれは完璧に動作します。私はPHPのコマンドでそれを実行したときしかし、:
echo exec ("python /Users/USERNAME/Desktop/Exeter_Bookstore_Project/lab/Python/amazonParser.py");
誰もがそれである理由のアイデアを持っていますか?
あなたが言っていることは、プログラムの出力を別の場所にリダイレクトしない限り、PHPがプロセスを終了するのを待っていることを示す 'exec'のドキュメントと矛盾します。 – Pete
@PietervandenHam私はプログラムの出力をリダイレクトしませんでしたが、私はデバッグに使用したメソッドの詳細を更新し、使用しているスクリプトへのリンクも与えました。スクリプト自体に明らかな問題はありますか? – xxmbabanexx