PHP を使用した Python スクリプトの実行とデータ交換
PHP 内で Python スクリプトを実行し、それらの間でデータを交換することが可能です。そのための 1 つの方法は、データ送信に共通言語形式と stdin/stdout を使用することです。
たとえば、Web サイト データ スクレイピング用の PHP クラスがあるシナリオを考えてみましょう。機能を強化するために、さまざまな Web サイト向けに特別に設計された Python スクリプトを統合しようとしています。
2 つの言語間のデータ転送を容易にするために、次のアプローチを利用できます:
PHP:
<code class="php">// Data to send to Python $data = ['as', 'df', 'gh']; // Execute Python script with JSON data as argument $result = shell_exec('python /path/to/myScript.py ' . escapeshellarg(json_encode($data))); // Decode the result $resultData = json_decode($result, true); // This will contain: array('status' => 'Yes!') var_dump($resultData);</code>
Python:
<code class="python">import sys, json # Load data sent from PHP try: data = json.loads(sys.argv[1]) except: print("ERROR") sys.exit(1) # Generate data to send to PHP result = {'status': 'Yes!'} # Send to stdout (to PHP) print(json.dumps(result))</code>
この例では、PHP は JSON データをシェル引数として Python スクリプトに送信します。スクリプトはデータを読み取り、処理し、stdout 経由で結果を JSON として送り返します。
このメソッドにより、PHP と Python の間で安全かつ信頼性の高いデータ転送が可能になります。 JSON などの構造化フォーマットでデータを交換することで、スムーズな通信が確保され、データ転送中の潜在的な問題が排除されます。
以上がPHP からシームレスにデータを交換し、Python スクリプトを実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。