PHP关联数组使用技巧

1.添加数组元素

PHP是一种弱类型语言,这意味着你不需要显示声明一个数组及其大小,相反,你可以同时声明并填充数组。

额外的数组元素可以象下面这样追加:

$capitals['Arkansas'] ='Little Rock';

如果你正在处理数字索引数组,你可能想使用显示命名的函数前置和追加元素,如array_push()和array_unshift()函数,但这些函数不能操作关联数组。

2.删除数组元素

unset($capitals['California']);

使用数字索引数组时,删除数组元素的办法更多,更灵活,可以使用array_shift()和array_pop()函数分别从数组的开头和末尾删除一个元素。

3.键和值交换

$capitals = array(

'Alabama'=>'Montgomery',

'Alaska'=>'Juneau',

'Arizona'=>'Phoenix'

);

$states = array_flip($capitals);

// $states = array(

// 'Montgomery' => string 'Alabama',

// 'Juneau' => string 'Alaska',

// 'Phoenix' => string 'Arizona'

// );

4.合并数组

array_merge()

如果$a,$b都是数组, 使用array_merge($a,$b)组成新数组, 关联数组:如果键相同,就覆盖前面的值

关联数组:


$a1=array("a"=>"red","b"=>"green"); $a2=array("c"=>"blue","b"=>"yellow"); print_r(array_merge($a1,$a2));

结果: Array ( [a] => red [b] => yellow [c] => blue )
数字数组:
$a1=array("red","green"); $a2=array("blue","yellow"); print_r(array_merge($a1,$a2));
结果:Array ( [0] => red [1] => green [2] => blue [3] => yellow )

5、编辑数组值

假设在数组中的数据包含大小字母写错误,在插入到数据库之前,你想纠正这些错误,你可以使用array_map()函数给每个数组元素应用一个回调。

function capitalize($element)

{

$element = strtolower($element);

returnucwords($element);

}

$capitals = array(

'Alabama'=>'montGoMEry',

'Alaska'=>'Juneau',

'Arizona'=>'phoeniX'

);

$capitals = array_map("capitalize", $capitals);

6.按键对数组排序

ksort()

7、随机数组排序

shuffle()

8、确定键和值是否存在

in_array(值,数组)

它和array_key_exists()函数的功能一样。

9、搜索数组

array_search()

$capitals = array(

'Arizona'=>'Phoenix',

'Alaska'=>'Juneau',

'Alabama'=>'Montgomery'

);

$state = array_search('Juneau', $capitals);

//结果 $state = 'Alaska'

10、标准PHP库