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

Python3 被 PHP 程序调用执行返回乱码问题,第1张

概述因为有一部分程序是 Python 写的,所以需要 PHP 调用 Python 程序返回数据,使用 exec 返回的是乱码$data = "Geek程序员"$get = exec(/usr/bin/python3 main.py $data);所以载调用 Python 程序之前需要转码$data = "Geek程序员"$data = urlencode($data)$get = 因为有一部分程序是 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 的字符串了 总结

以上是内存溢出为你收集整理的Python3 被 PHP 程序调用执行返回乱码问题全部内容,希望文章能够帮你解决Python3 被 PHP 程序调用执行返回乱码问题所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1189655.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-03
下一篇 2022-06-03

发表评论

登录后才能评论

评论列表(0条)

保存