5.13交换数组索引和元素
5.13 交换数组索引和元素
PHP中的数组可以通过函数实现索引和元素的交换,这对程序实现某些操作带来极大的便利,这个函数就是array_flip(),该函数的语法如下。
array array_flip(array $arr)
参数$arr是一个要做索引和元素对换的数组,函数会将数组$arr索引和元素对换后返回。需要注意的是,$arr中的元素必须是能做数组索引的类型,比如string类型或integer类型。如果值的类型不对,PHP会发出一个警告,并且有问题的键/值对将不会对换。如果同一个元素出现了多次,则最后一个索引名将作为它的元素,所有其他的将被丢失。函数array_flip()执行失败,将会返回FALSE。代码5-24演示了该函数的用法。
代码5-24 使用函数array_flip()将数组索引和元素对换5-25.php
02 $olympic = array( 03 "Barcelona"=>1992, 04 "Atlanta"=>1996, 05 "Sydney"=>2000, 06 "Athens"=>2004, 07 "Beijing"=>2008 08 ); // 定义数组$olympic 09 10 echo " 原数组:"; 11 echo "<pre>"; 12 print_r($olympic); 13 echo "</pre>"; 14 15 $nol = array_flip($olympic); // 将数组索引和元素对换 16 echo "<br/>"; 17 18 echo " 数组元素和索引对调之后:"; 19 echo "<pre>"; 20 print_r($nol); 21 ?>
【代码解析】执行代码5-24.php将看到如图5-24的效果。通过结果可以很明显地看到,数组中元素和索引互换后的结果。

图5-24 数组元素和索引的对换
上一篇:5.12对数组的集合处理
下一篇:5.14快速填充数组元素