gpt4 book ai didi

php - 使用 UTF-8 进行 PHP 系统调用 Python

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:06:00 25 4
gpt4 key购买 nike

PHP 中存在这样的系统调用

system("python3 returnUTF8.py")

如果我在 Linux 命令行上运行 Python 脚本 - 它工作正常,但是当我使用 PHP 系统命令时我收到错误“UnicodeEncodingError - 无法编码为 ascii”...

我理解问题是 Python 中的打印函数默认为调用者想要的结果,当我在命令行上运行 print (sys.stdout.encoding) 时会显示这一点获取 UTF-8 并从系统调用中获取 ANSI_X3.4-1960

如何更改 PHP 或 Python 脚本中的系统调用以使用 UTF-8 编码?

最佳答案

您需要告诉 Python 使用什么编码;通常这是从您的终端语言环境中获取的,但是当您使用 system() 时,没有这样的语言环境,然后使用默认的 C 语言环境编码,即 ANSI_X3.4-1960(又名 ASCII)。

设置PYTHONIOENCODING environment variable :

system("PYTHONIOENCODING=utf-8 python3 returnUTF8.py")

或在您的程序中显式编码为 UTF-8。

关于php - 使用 UTF-8 进行 PHP 系统调用 Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40931197/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com