Python3 被 PHP 程序调用执行返回乱码问题

来源:互联网 发布:蚂蚁影院电影网站源码 编辑:程序博客网 时间:2024/06/01 10:27

因为有一部分程序是 Python 写的,所以需要 PHP 调用 Python 程序返回数据,使用 exec 返回的是乱码

$data = "Geek程序员"$get = exec(/usr/bin/python3 main.py $data);

所以载调用 Python 程序之前需要转码

$data = "Geek程序员"$data = urlencode($data)$get = exec(/usr/bin/python3 main.py $data);

main.py 接受到命令行传值先进行转码

import sysimport urllib.parsesys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')data = urllib.parse.unquote(sys.argv[1])

这样 php 中使用 exec 就可以获取 UTF-8 的字符串了

原创粉丝点击