Python3脚本在shell中运行良好,但会在PHP中触发UnicodeincodeError

Python3脚本在shell中运行良好,但会在PHP中触发UnicodeincodeError,php,python-3.x,character-encoding,Php,Python 3.x,Character Encoding,考虑以下脚本: #!/usr/bin/env python3 print("<h1>é</h1>") #/usr/bin/env蟒蛇3 印刷体(“é”) 我正在尝试从PHP运行它: <?php system("/usr/bin/python3 /my/script.py"); ?> 它在shell中运行良好,但在PHP中崩溃: UnicodeEncodeError:“ascii”编解码器无法对位置3中的字符“\xe9”进行编码:序号不在范围

考虑以下脚本:

#!/usr/bin/env python3

print("<h1>é</h1>")
#/usr/bin/env蟒蛇3
印刷体(“é”)
我正在尝试从PHP运行它:

<?php
    system("/usr/bin/python3 /my/script.py");
?>

它在shell中运行良好,但在PHP中崩溃:

UnicodeEncodeError:“ascii”编解码器无法对位置3中的字符“\xe9”进行编码:序号不在范围内(128)

如果我添加
.encode('utf-8')
PHP打印字节编码字符串:

b'\xc3\xa9'


我怎样才能修好它?在python脚本中添加
#-*-编码:utf-8-*-
或者在字符串前面加
u
都没有帮助,我认为utf-8应该是python3的默认值?

一个修复方法是明确地设置
PythonionEncoding

<?php
    system("PYTHONIOENCODING=utf-8 /usr/bin/python3 /my/script.py");
?>

[]