PHP から Python プログラムを呼び出すときに注意すること

PHP から Python プログラムを呼び出しす時、

system_exec などを使いますが、

Python 単体で実行させた時は正常に動くのに、PHPから呼び出すとエラーになるということがありました。

1、import しているライブラリが指定のPython パス の中にはないものを参照している場合注意が必要。

ライブラリのインストール先を統一するために、

「Install to user's packages directory (/Users/【ユーザー名】/.local)」にチェックは入れない方がいいです。

2、不必要な print() 関数は使わない、なぜか全角文字を出力しているとプログラムがコケました。

この理由がわかりました。

$re = shell_exec('export LANG=ja_JP.UTF-8; /略/python3 /略/sample.py');
var_dump($re);

export LANG=ja_JP.UTF-8;

↑この部分のように、文字コードを指定しないとダメみたいです。UTF−8だけで書いてるのになぜこの設定が必要なのだろう。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA