设为首页
收藏本站
用户名
Email
自动登录
找回密码
密码
登录
立即注册
只需一步,快速开始
快捷导航
登录
注册
论坛首页
BBS
建站模版
微站设计
虚拟主机
企业邮箱
博客日志
Blog
搜索
搜索
搜索
热搜
长春
优惠
活动
做网站
本版
帖子
用户
本版
帖子
用户
请
登录
后使用快捷导航
没有帐号?
立即注册
道具
勋章
任务
留言板
设置
我的收藏
退出
时时商务社区
»
论坛首页
›
建站资源
›
建站技术
›
解决php接收shell返回的结果中文乱码问题 ...
返回列表
查看:
66
|
回复:
0
解决php接收shell返回的结果中文乱码问题
[复制链接]
阿情
当前离线
积分
7622
2560
主题
2560
帖子
7622
积分
论坛元老
论坛元老, 积分 7622, 距离下一级还需 9992377 积分
论坛元老, 积分 7622, 距离下一级还需 9992377 积分
积分
7622
发消息
电梯直达
楼主
发表于 2018-2-14 06:00:56
|
只看该作者
|
倒序浏览
|
阅读模式
如果需要php执行一些shell命令,查看显示结果的话,如果shell输出的有中文,则php得到的中文返回结果可能类似是 “?\230?\180?\187?\229?\138?\168” 的字符串。那么需要这个函数转译:
[U]复制代码[/U] 代码如下:
//这个函数接收的都是路径,所以判断了文件扩展名
function shell2txt($a){
$ary = explode('/', $a);
foreach($ary as $k => $v){
if(strpos($v, '?\\') !== false){
$_ary = explode('?\\', $v);
foreach($_ary as $_k=>$_v){
if($_v == '') continue;
//判断是否有文件扩展名
$end = '';
if(strpos($_v, '.') !== false){
$end = substr($_v, strpos($_v, '.'));
}
$_ary[$_k] = dechex($_v).$end;
}
$ary[$k] = implode('%', $_ary);
}
}
$a = implode('/', $ary);
return urldecode($a);
}
您可能感兴趣的文章:
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
PHP教程之PHP中shell脚本的使用方法分享
解析php中如何直接执行SHELL
监控服务器swap并重启php的Shell脚本
用PHP和Shell写Hadoop的MapReduce程序
实现Nginx中使用PHP-FPM时记录PHP错误日志的配置方法
PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径
PHP+FastCGI+Nginx配置PHP运行环境
PHP中exec函数和shell_exec函数的区别
叫你如何修改Nginx与PHP的文件上传大小限制
php调用shell的方法
php管理nginx虚拟主机shell脚本实例
分享到:
QQ好友和群
QQ空间
腾讯微博
腾讯朋友
收藏
0
回复
使用道具
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
用户反馈
客户端