PHP解决serialize函数中文乱码问题的方法:将序列化后包含中文的字符串再进行一次“base64_encode”编码,编码后可以将特殊字符进行转义,并将中文字符传送到客户端。
本文操作环境:Windows10系统、PHP7.1版、Dell G3电脑。
php中怎么解决serialize函数中文乱码的问题
serialize() 函数用于序列化对象或数组,并返回一个字符串。
serialize() 函数序列化对象后,可以很方便的将它传递给其他需要它的地方,且其类型和结构不会改变。
语法为:
string serialize ( mixed $value )
参数说明:
$value: 要序列化的对象或数组。
相信大家在运用serialize对中文的编码的时候都会遇到过中文不可解析的问题。尤其是在将序列化后的中文字符串传送到客户端的时候,那应该如何解决这个问题呢?
其实很容易,将序列化后的包含中文的字符串再进行一次base64_encode的编码,这样就能够将特殊字符进行转移。将中文字符传送到客户端了。
示例如下:
<?php $sites = array('Google', 'Runoob', 'Facebook'); $serialized_data = serialize($sites); echo $serialized_data . PHP_EOL; ?>
输出结果:
推荐学习:《PHP视频教程》