phpからpythonを呼び出す方法のメモ
概略
本記事は、phpからpythonを呼び出そうと思ったときの話で、
MAMPでサーバーを立て、その上でphpからpythonを呼び出すって感じです。
MAMP, php, python それぞれで行った設定を順に書いていきます。
MAMPの設定
多分、初期設定では.pyがハンドラーに設定されてないので追加しときます。
変更するファイルはこれ→ ~/MAMP/conf/apache/httpd.conf
AddHandolerに.pyを追加する。
AddHandoler cgi-script .cgi .pl .py #←これ追加
pythonの設定
とりあえず適当な .pyファイルを作る。
print("Hello world")
作った.pyの先頭にpythonまでのパスを追加。
とりあえず、ターミナルで which python3 を叩く。
which python3
~/python3 #←(環境によって内容が変わるので注意)
ターミナルの結果を元に.pyに追記。
#!~/python3 ←(環境によって内容が変わるので注意)
print("Hello world")
.pyをサーバーで動かすために謎の呪文を追加。(#!〜行の下くらいが良さそう)
#!~/python3 ←(環境によって内容が変わるので注意)
print("Content-type: text/html; charset=Shift_JIS\n\r\n")#←謎の呪文
print("Hello world")
権限の変更をする。
chmod 755 test.py
phpの設定
commandには呼び出す.pyファイルを指定する。
(pythonをコマンドラインから呼び出す時に記述する内容を記載)
$outputには、.pyでprint文で書き出した結果がリスト形式で入る。
<?php
$command="python ./test.py ";
exec($command,$output);
print_r(]$output);#$outputに格納されたインデックスと値の関係の一覧を表示
echo $output[1];#表示したい要素が一つだけの場合の指定方法
?>
ブラウザで.pyの出力と同じ結果を確認できたらOKってとこですかね。
最後まで読んでいただきありがとうございました。
また気が向いたら投稿しようかな〜・・・
Author And Source
この問題について(phpからpythonを呼び出す方法のメモ), 我々は、より多くの情報をここで見つけました https://qiita.com/Takuya_Fujitani/items/bad274e758c9460d6d44著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .