怎么解决PHP中文乱码的问题
发表于:2025-02-16 作者:千家信息网编辑
千家信息网最后更新 2025年02月16日,本篇文章给大家分享的是有关怎么解决PHP中文乱码的问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。汉字乱码真是一个悲催的事情,JAVA
千家信息网最后更新 2025年02月16日怎么解决PHP中文乱码的问题
本篇文章给大家分享的是有关怎么解决PHP中文乱码的问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
汉字乱码真是一个悲催的事情,JAVA讨厌汉字,PHP也不喜欢汉字;
Java乱码最终使用了spring给出的过滤器来过滤,处处过滤,其实影响了速度,不过没有办法,汉字就是W国首先不考虑的事情;
想不到PHP也是乱码处处在,当你使用亲兄弟MySQL的时候,汉字显得那么亲切,从未考虑过他会变成天书;不过为了和其他其他交互,把PHP的手伸到SQL SERVER的时候,乱码来了,原因是第三方系统用的GBK编码;
哎,转换吧;
1,PHP自带的转换函数ICONV,一个高大上的函数;
string iconv ( string $in_charset , string $out_charset , string $str )
使用DEMO:
大家都推荐的函数,不过使用之后无法转换,没有错误,字符也没有转换,NO!
2,另辟蹊径,还有一个大家质疑效率不高的函数,不过无论如何,先实现再考虑其他三
//检查该函数是否可用echo function_exists('mb_convert_encoding');//检测当前编码echo mb_detect_encoding($val, "GBK, GB2312, UTF-8");//转换编码,把CP936(就是GBK)转换成UTF-8$v=mb_convert_encoding ($val, "UTF-8", "CP936");
结果成功了;
好吧,先用着吧,为了转换数据库查询的结果集,制作一个转换函数:
1,函数"乱码克星":
// $fContents 字符串// $from 字符串的编码// $to 要转换的编码function auto_charset($fContents,$from='gbk',$to='utf-8'){ $from = strtoupper($from)=='UTF8'? 'utf-8':$from; $to = strtoupper($to)=='UTF8'? 'utf-8':$to; if( strtoupper($from) === strtoupper($to) || empty($fContents) || (is_scalar($fContents) && !is_string($fContents)) ){ //如果编码相同或者非字符串标量则不转换 return $fContents; } if(is_string($fContents) ) { if(function_exists('mb_convert_encoding')){ return mb_convert_encoding ($fContents, $to, $from); }else{ return $fContents; } } elseif(is_array($fContents)){ foreach ( $fContents as $key => $val ) { $_key = auto_charset($key,$from,$to); $fContents[$_key] = auto_charset($val,$from,$to); if($key != $_key ) unset($fContents[$key]); } return $fContents; } else{ return $fContents; }}
2,使用:
//打印输出查询结果(假设你的结果)$arr=array();while($list=mssql_fetch_row($row)){ $arr[]=$list;}$s=auto_charset($arr,'gbk','utf-8');//打印试试,在浏览器设置编码为UFT-8,看没有乱码print_r($s);die();
以上就是怎么解决PHP中文乱码的问题,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
乱码
函数
编码
汉字
字符
结果
字符串
就是
问题
中文
事情
时候
更多
知识
篇文章
UTF-8
查询
实用
相同
高大
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
知网数据库论文下载
数据库慢查询监控
惠普服务器 安全模式
没有网络能连接数据库吗
rust 访问数据库
软件开发小组团队宗旨
菜鸟网络技术面试
数据库单个实体型
监控插件软件开发
衢州定制app软件开发
剑灵服务器端
朗新科技与工业互联网
网络安全市场的现状
cmd数据库导入数据库表
高科技互联网团建活动产品
腾讯云服务器地址更改
使用vb软件开发平台
日程管理数据库设计
开票系统显示数据库错误
远程调用服务器上的js方法
数据库的数据应具有
自动化软件开发技术工程师
思科网络技术期末考试a卷
为什么快手登录不了服务器繁忙
共享网络安全隐患
广州市衣酷网络技术
电脑服务器开不了机是什么原因
阳台门下载软件开发
东进软件开发有限公司招聘
如何培养孩子网络安全知识