当前位置:首页 > 建站笔记 > 正文

php中怎么解决serialize函数中文乱码的问题

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;
?>

输出结果:

发表评论