怎么解决PHP中文乱码的问题
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,本篇文章给大家分享的是有关怎么解决PHP中文乱码的问题,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。汉字乱码真是一个悲催的事情,JAVA
千家信息网最后更新 2025年01月23日怎么解决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安全错误
数据库的锁怎样保障安全
弋阳软件开发公司
网络安全意识导论在线
手狼服务器
自媒体软件开发多少钱
最大容量数据库
表格的连接数据库数据库
网络安全监管机构的职责
深圳南方网络技术开发有限公司
sql服务器连接不上
剑三双线服务器
基础数据库含义
方舟服务器手游价格表
银之守墓人游戏服务器怎么关闭
饥荒服务器自动暂停失败
镇江软件开发招骋
db2数据库管理追踪操作历史
戴尔服务器增加硬盘
华为网络安全1.0
机器视觉软件开发是做什么
现代网络技术自考
java获取数据库结构信息
提高公司网络安全系数
竹山专业软件开发售后保障
杭州东信网络技术限公司
网络安全存在问题自查报告
顺义服务器回收价钱
电竞和网络安全
吴江区数据网络技术收费
具影响力的mysql云数据库
浮居内网穿透 网游服务器