PHPやJavaでPythonを実行する2つの方法

のえる のえる
2021.10.29

Python で作ったプログラムを他のプログラムと連携させたい、という事例を最近耳にします。

 

そこで今回は PHP や Java から Python を実行する方法をご紹介します。

 

はじめに

今回実装する環境は下記のとおりです。

 

PHP 7.4.20
Python 3.7.10

 

※今回はPHPで実装していますが、やり方自体は Java でも node.js でも同じです。

実装1. コマンドライン

Python プログラムを直接呼び出すやり方です。

 

 

この方法の場合 PHPがpythonコマンドを実行できること という条件があります。

 

Pythonのエラーハンドルが少し難しいところもありますが、簡単に実行できるのが利点です。

 

また、直接やり取りをするため、オーバーヘッドが少ないのもポイントです。

実装2. FlaskによるWebアクセス

もう一つは Python側でFlaskを立ち上げ、そこにPHPからアクセスする方法です。

 

こちらは比較的簡単で、PHPのcurlによるアクセスで実行ができます。

 

導入も簡単で結果もJSONなどで受け取ることができますが、通信などによるオーバーヘッドが発生するため、速度を求めるようなものはあまり向いていないかもしれません。

 

さらに、Flaskの分のメモリも必要になるため、Python単体より多めのメモリを使用します。

さいごに

他のシステムを呼ぶ方法は多岐に渡りますが、今回は PHP と Python の連携を題材にしました。

 

実際に運用する際にはもっと高度な方法もありますが、比較的簡単に導入できる上記2点、検討してみてはいかがでしょうか?

スポンサーリンク

POPULAR

のえる

のえる

Full-stack Developer