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


Posted in Python onFebruary 16, 2019

因为有一部分程序是 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 sys
import urllib.parse
 
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
data = urllib.parse.unquote(sys.argv[1])

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

以上这篇解决Python3 被PHP 程序调用执行返回乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Django的视图中使用form对象的方法
Jul 18 Python
基于Python os模块常用命令介绍
Nov 03 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
Oct 21 Python
python多进程使用及线程池的使用方法代码详解
Oct 24 Python
python文件拆分与重组实例
Dec 10 Python
用Python将结果保存为xlsx的方法
Jan 28 Python
Python图像处理之图片文字识别功能(OCR)
Jul 30 Python
详解Django CAS 解决方案
Oct 30 Python
python实现数字炸弹游戏
Jul 17 Python
利用Python将多张图片合成视频的实现
Nov 23 Python
浅析Python的命名空间与作用域
Nov 25 Python
Python爬虫基础之简单说一下scrapy的框架结构
Jun 26 Python
Python3 修改默认环境的方法
Feb 16 #Python
Python3 pip3 list 出现 DEPRECATION 警告的解决方法
Feb 16 #Python
对Python3 解析html的几种操作方式小结
Feb 16 #Python
Python实现爬取马云的微博功能示例
Feb 16 #Python
对Python3 * 和 ** 运算符详解
Feb 16 #Python
Python docx库用法示例分析
Feb 16 #Python
Python中整数的缓存机制讲解
Feb 16 #Python
You might like
PHP控制网页过期时间的代码
2008/09/28 PHP
PHP中file_exists与is_file,is_dir的区别介绍
2012/09/12 PHP
win平台安装配置Nginx+php+mysql 环境
2016/01/12 PHP
PHP 结合 Boostrap 结合 js 实现学生列表删除编辑及搜索功能
2019/05/21 PHP
JS 实现BASE64_ENCODE和BASE64_DECODE(实例代码)
2013/11/13 Javascript
可编辑下拉框的2种实现方式
2014/06/13 Javascript
js实现数组转换成json
2015/06/26 Javascript
js实现兼容性好的微软官网导航下拉菜单效果
2015/09/07 Javascript
jQuery position() 函数详解以及jQuery中position函数的应用
2015/12/14 Javascript
ztree实现权限横向显示功能
2017/05/20 Javascript
Web制作验证码功能实例代码
2017/06/19 Javascript
angular.js + require.js构建模块化单页面应用的方法步骤
2017/07/19 Javascript
vue自定义一个v-model的实现代码
2018/06/21 Javascript
JS实现Cookie读、写、删除操作工具类示例
2018/08/28 Javascript
vue路由导航守卫和请求拦截以及基于node的token认证的方法
2019/04/07 Javascript
js实现坦克移动小游戏
2019/10/28 Javascript
[05:15]2018年度CS GO社区贡献奖-完美盛典
2018/12/16 DOTA
Python中使用scapy模拟数据包实现arp攻击、dns放大攻击例子
2014/10/23 Python
Tensorflow 卷积的梯度反向传播过程
2020/02/10 Python
Python利用命名空间解析XML文档
2020/08/10 Python
PyCharm Community安装与配置的详细教程
2020/11/24 Python
python中操作文件的模块的方法总结
2021/02/04 Python
施华洛世奇波兰官网:SWAROVSKI波兰
2019/06/18 全球购物
公司人力资源的自我评价
2014/01/02 职场文书
旷课检讨书1000字
2014/02/14 职场文书
报告会主持词
2014/04/02 职场文书
优秀实习生主要事迹
2014/05/29 职场文书
销售队伍口号
2014/06/11 职场文书
公共场所禁烟标语
2014/06/25 职场文书
内科护士节演讲稿
2014/09/11 职场文书
教师群众路线心得体会
2014/11/04 职场文书
党员先进事迹材料
2014/12/19 职场文书
前台文员岗位职责
2015/02/04 职场文书
迎新生欢迎词2015
2015/07/16 职场文书
pytorch中的model.eval()和BN层的使用
2021/05/22 Python
Java spring定时任务详解
2021/10/05 Java/Android