Rumah >pembangunan bahagian belakang >masalah PHP >php如何对数组进行转码

php如何对数组进行转码

王林
王林asal
2021-06-10 14:42:162383semak imbas

php对数组进行转码的方法是,使用mb_convert_encoding函数转换字符的编码,例如【mb_convert_encoding($value, "UTF-8", "GB2312");】,表示转换GB2312编码为UTF-8。

php如何对数组进行转码

本文操作环境:windows10系统、php 7.3、thinkpad t480电脑。

下面分享了两种对数组进行转码的具体代码,供大家参考!

使用到的函数介绍:

array_map() 函数将用户自定义函数作用到数组中的每个值上,并返回用户自定义函数作用后的带有新的值的数组。

函数语法:

array_map(myfunction,array1,array2,array3...)

参数:

  • myfunction    用户自定义函数的名称,或者是 null。    

  • array1    规定数组。    

  • array2    规定数组。    

  • array3    规定数组。    

mb_convert_encoding函数用来转换字符的编码。

说明:

mb_convert_encoding ( array|string $string , string $to_encoding , array|string|null $from_encoding = null ) : array|string|false

将 string 类型 str 的字符编码从可选的 from_encoding 转换到 to_encoding。 当参数 string 是一个 array 时,将递归转换它所有的 string 值。

转换GB2312编码为UTF-8

具体代码如下:

//更改编码为utf8
protected function array2utf8($array){
	$array = array_map(function($value){
		if(is_array($value)){
			return $this->array2utf8($value);
		} else{
			return mb_convert_encoding($value, "UTF-8", "GB2312");
		}
	}
	, $array);
	return $array;
}
  

转换UTF-8编码为GB2312

具体代码如下:

protected function array2gbk($array){
	$array = array_map(function($value){
		if(is_array($value)){
			return $this->array2gbk($value);
		} else{
			return mb_convert_encoding($value, "GB2312", "UTF-8");
		}
	}
	, $array);
	return $array;
}

相关视频分享:php视频教程

Atas ialah kandungan terperinci php如何对数组进行转码. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn