解决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 相关文章推荐
python之wxPython应用实例
Sep 28 Python
浅谈Python中用datetime包进行对时间的一些操作
Jun 23 Python
Python面向对象编程中关于类和方法的学习笔记
Jun 30 Python
python dict 字典 以及 赋值 引用的一些实例(详解)
Jan 20 Python
Python2实现的图片文本识别功能详解
Jul 11 Python
对Python定时任务的启动和停止方法详解
Feb 19 Python
Python 3.8中实现functools.cached_property功能
May 29 Python
Python集中化管理平台Ansible介绍与YAML简介
Jun 12 Python
django框架CSRF防护原理与用法分析
Jul 22 Python
解决IDEA 的 plugins 搜不到任何的插件问题
May 04 Python
Python os库常用操作代码汇总
Nov 03 Python
golang中的空接口使用详解
Mar 30 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
星际中一些鲜为人知的详细资料
2020/03/04 星际争霸
php巧获服务器端信息
2006/12/06 PHP
PHP中实现接收多个name相同但Value不相同表单数据实例
2015/02/03 PHP
Zend Framework开发入门经典教程
2016/03/23 PHP
php简单实现数组分页的方法
2016/04/30 PHP
PHP中多线程的两个实现方法
2016/10/14 PHP
PHP MYSQL简易交互式站点开发
2016/12/27 PHP
php实现和c#一致的DES加密解密实例
2017/07/24 PHP
ThinkPHP5.0 图片上传生成缩略图实例代码说明
2018/06/20 PHP
Gambit vs CL BO3 第二场 2.13
2021/03/10 DOTA
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
ExtJs grid行 右键菜单的两种方法
2010/06/19 Javascript
flexigrid 参数说明
2010/11/23 Javascript
select标签模拟/美化方法采用JS外挂式插件
2013/04/01 Javascript
js读取被点击次数的简单实例(从数据库中读取)
2014/03/07 Javascript
node.js中的console.log方法使用说明
2014/12/09 Javascript
Bootstrap学习系列之使用 Bootstrap Typeahead 组件实现百度下拉效果
2016/07/07 Javascript
vue2滚动条加载更多数据实现代码
2017/01/10 Javascript
Vue组件化通讯的实例代码
2017/06/23 Javascript
彻底理解js面向对象之继承
2018/02/04 Javascript
JavaScript DOM元素常见操作详解【添加、删除、修改等】
2018/05/09 Javascript
微信小程序中使用wxss加载图片并实现动画效果
2018/08/13 Javascript
详解如何解决Vue和vue-template-compiler版本之间的问题
2018/09/17 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
2020/08/10 Javascript
[45:18]完美世界DOTA2联赛循环赛 PXG vs IO 第二场 11.06
2020/11/09 DOTA
python使用urllib模块开发的多线程豆瓣小站mp3下载器
2014/01/16 Python
pip 错误unused-command-line-argument-hard-error-in-future解决办法
2014/06/01 Python
使用Python编写Linux系统守护进程实例
2015/02/03 Python
Pytorch 抽取vgg各层并进行定制化处理的方法
2019/08/20 Python
python处理自动化任务之同时批量修改word里面的内容的方法
2019/08/23 Python
python3定位并识别图片验证码实现自动登录功能
2021/01/29 Python
PHP如何删除一个Cookie值
2012/11/15 面试题
雏鹰争章活动总结
2014/05/09 职场文书
离婚起诉书范本
2015/05/18 职场文书
教师教育教学随笔
2015/08/15 职场文书
python爬虫之selenium库的安装及使用教程
2021/05/23 Python