解决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 相关文章推荐
Linux下用Python脚本监控目录变化代码分享
May 21 Python
python获取目录下所有文件的方法
Jun 01 Python
Python面向对象之继承和组合用法实例分析
Aug 27 Python
Python3爬虫学习入门教程
Dec 11 Python
Django models.py应用实现过程详解
Jul 29 Python
python 用户交互输入input的4种用法详解
Sep 24 Python
使用python代码进行身份证号校验的实现示例
Nov 21 Python
基于Python和PyYAML读取yaml配置文件数据
Jan 13 Python
Python实现王者荣耀自动刷金币的完整步骤
Jan 22 Python
Python绘制地图神器folium的新人入门指南
May 23 Python
matplotlib如何设置坐标轴刻度的个数及标签的方法总结
Jun 11 Python
详解Python如何批量采集京东商品数据流程
Jan 22 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
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
php_screw 1.5:php加密: 安装与使用详解
2013/06/20 PHP
php中判断数组相等的方法以及数组运算符介绍
2015/03/30 PHP
学习php设计模式 php实现门面模式(Facade)
2015/12/07 PHP
PHP面向对象学习之parent::关键字
2017/01/18 PHP
php数组实现根据某个键值将相同键值合并生成新二维数组的方法
2017/04/26 PHP
新浪的图片新闻效果
2007/01/13 Javascript
JavaScript 模拟用户单击事件
2009/12/31 Javascript
JS中confirm,alert,prompt函数区别分析
2011/01/17 Javascript
jQuery弹出框代码封装DialogHelper
2015/01/30 Javascript
png在IE6 下无法透明的解决方法汇总
2015/05/21 Javascript
JavaScript实现的经典文件树菜单效果
2015/09/08 Javascript
Bootstrap前端开发案例一
2016/06/17 Javascript
Jquery遍历select option和添加移除option的实现方法
2016/08/26 Javascript
使用JS中的Replace()方法遇到的问题小结
2017/10/20 Javascript
原生js实现省市区三级联动代码分享
2018/02/12 Javascript
React Native基础入门之调试React Native应用的一小步
2018/07/02 Javascript
详解vue-cli3使用
2018/08/14 Javascript
vue 中的动态传参和query传参操作
2020/11/09 Javascript
vue 通过base64实现图片下载功能
2020/12/19 Vue.js
vue中watch的用法汇总
2020/12/28 Vue.js
Python入门篇之数字
2014/10/20 Python
玩转python爬虫之爬取糗事百科段子
2016/02/17 Python
python 通过 socket 发送文件的实例代码
2018/08/14 Python
python爬虫之urllib库常用方法用法总结大全
2018/11/14 Python
python mysql断开重连的实现方法
2019/07/26 Python
python正则表达式匹配IP代码实例
2019/12/28 Python
python 基于opencv实现高斯平滑
2020/12/18 Python
JSF面试题:Jsf中的核心类用那些?有什么作用?LiftCycle六大生命周期是什么?
2014/07/17 面试题
外语系毕业生找工作的求职信
2013/11/28 职场文书
个人教师自我评价范文
2013/12/02 职场文书
求职信需要的五点内容
2014/02/01 职场文书
医学生求职自荐书
2014/06/12 职场文书
购房个人委托书范本
2014/10/11 职场文书
先进事迹材料范文
2014/12/29 职场文书
MySQL范围查询优化的场景实例详解
2022/06/10 MySQL