转化方法:1、用“array_flip($arr)”语句;2、用“array_combine($arr,array_keys($arr))”语句;3、用“foreach($arr1 as $k=>$v){$arr2[$v]=$k;}”语句。
本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
PHP将键名和键值相互转化
1、使用array_flip()函数
PHP将键名和键值相互转化,简单来说就是交换数组中的键名和键值。
而这一操作,PHP中有一个内置函数就是这个功能,那就是 array_flip()
函数。
array_flip() 函数用来交换数组中的键和值,其语法如下:
array_flip ($array)
$array数组中的值需要能够作为合法的键名,例如需要是 integer 或者 string。如果值的类型不对将发出一个警告,并且有问题的键值对将不会反转。
如果同一个值出现了多次,那么最后一个键名将作为它的值,所有其他的都丢失了。
返回值:执行成功时返回交换后的数组,失败时返回 NULL。
示例:
<?PHP $arr = array('a', 'b', '1', 2, 3); var_dump($arr); var_dump(array_flip($arr)); ?>
2、使用array_combine()和array_keys()函数
只需要将array_keys()函数返回的键名数组作为新数组的键值,原数组作为新数组的键名即可。
<?PHP $arr = array('a', 'b', '1', 2, 3); var_dump($arr); var_dump(array_combine($arr,array_keys($arr))); ?>
3、利用foreach循环和一个空数组
<?PHP $arr1=array(aaa=>11,bbb=>22,ccc=>33); var_dump($arr1); $arr2=array(); foreach($arr1 as $k=>$v){ $arr2[$v]=$k; } var_dump($arr2); ?>
推荐学习:《PHP教程》
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。