PHP 调用 exec 带中文的命令

1
$input = shell_exec($cmd = '/usr/bin/python3 ' . APP_PATH . "/library/OpsKG/input_jieba.py $input");

无输出,python其实并没有收到正确的中文输入,exec的中文编码问题

需要先设置exec的环境变量

1
2
putenv('LC_ALL=en_US.UTF-8');
$input = shell_exec($cmd = '/usr/bin/python3 ' . APP_PATH . "/library/OpsKG/input_jieba.py $input");

或在命令前export LANG=en_US.UTF-8;