PHP中如何给关联数组的key和value转码?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP中如何给关联数组的key和value转码?相关的知识,希望对你有一定的参考价值。

有现成的给数组转换编码的函数吗?
如果没有,那么有什么方法能实现这个功能吗?

比如数组是这样的:array(电脑=>1,内存,=>10),这个数组的字符都是GBK码的
现在想把GBK码转成UTF-8码~~

php转码一般用iconv()方法。

如:iconv("转码前的编码","转码后的编码",需要转换编码的字符串);

$result_array = array();//定一个接收结果的空数组。
$array=array("电脑"=>12,"内存"=>3,"显示器"=>19);//定义数组即要转换编码的数组
foreach ($s as $key => $value) //使用foreach循环遍历数组。
 $key=iconv("GBK","UTF-8",$key);//对数组的键进行转码即要转换编码的文字。
 $result_array[$key]=$value;//从新拼接一个新的数组(转码后)

var_dump($result_array)//打印转码后的数组进行确认。

参考技术A $s=array("电脑"=>12,"内存"=>3,"显示器"=>19);
foreach ($s as $key => $value)
$key=iconv("GBK","UTF-8",$key);
$t[$key]=$value;

echo "<pre>";
print_r($t);本回答被提问者采纳
参考技术B 把数据库里读出来的数据变为数组?每行为一个数组,然后在将行组成一个数组$db
=
array();$row
=
array();$row[\'id\']
=
1;$row[\'name\']
=
\'1\';$db[]
=
$row;重复$row
=
array();$row[\'id\']
=
2;$row[\'name\']
=
\'2\';$db[]
=
$row;这样就类似这样的结果dbid?
??
?name1?
??
?12?
??
?23?
??
?3…………

以上是关于PHP中如何给关联数组的key和value转码?的主要内容,如果未能解决你的问题,请参考以下文章

PHP------定义数组,取值数组和遍历数组

PHP----数组

php 数组索引值如何重新从0开始递增

取出关联数组的key值和values值

PHP 数组Array

php 关联数组遍历