首页 / 网页编程 / PHP / PHP array操作10个小技巧分享
1、向array中添加元素 php是一个弱类型语言。因此不必象c语言那样为php array声明长度。向其中添加元素的过程也是声明和初始化的过程。 复制代码 代码如下: $capitals = array( "Alabama" => "Montgomery", "Alaska" => "Juneau", "Arizona" => "Phoenix" ); 继续添加元素也很简单 复制代码 代码如下: $capitals["Arkansas"] = "Little Rock"; 如果不是关联数组而只是数字索引的数组可以使用array_push()和array_unshift()函数增加元素 2、从array中删除元素 从数组中移除元素可以使用unset() 函数 复制代码 代码如下: unset($capitals["California"]); 也可以使用array_pop()或array_shift()函数从数组头或尾部顺序移除元素 3、array键值互换 如果希望新建数组的键是老数组的值而值是老数组的键,简而言之就是键值对调,则可以使用array_flip()函数完成操作 复制代码 代码如下: $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()函数可以帮上这个忙^_^ 复制代码 代码如下: $stateCapitals = array( "Alabama" => "Montgomery", "Alaska" => "Juneau", "Arizona" => "Phoenix" ); $countryCapitals = array ( "Australia" => "Canberra", "Austria" => "Vienna", "Algeria" => "Algiers" ); $capitals = array_merge($stateCapitals, $countryCapitals); 5、修改array中的值 譬如希望将数组的中值全部改为小写后大写首字母,使用回调函数递归地对每个数组成员调用是个不错的方法,php中这个函数是php_map() 复制代码 代码如下: function capitalize($element) { $element = strtolower($element); return ucwords($element); } $capitals = array( "Alabama" => "montGoMEry", "Alaska" => "Juneau", "Arizona" => "phoeniX" ); $capitals = array_map("capitalize", $capitals); 6、根据array的键为数组排序 复制代码 代码如下: $capitals = array( "Arizona" => "Phoenix", "Alaska" => "Juneau", "Alabama" => "Montgomery" ); ksort($capitals); 7、随机化array元素的顺序 shuffle() 和上面的ksort()函数恰恰相反,可以打乱数组现有的秩序,以达到随机化的目的。 复制代码 代码如下: $capitals = array( "Arizona" => "Phoenix", "Alaska" => "Juneau", "Alabama" => "Montgomery" ); shuffle($capitals); 8、查找键或值是否存在 查找是否存在值使用in_array()函数 复制代码 代码如下: $capitals = array( "Arizona" => "Phoenix", "Alaska" => "Juneau", "Alabama" => "Montgomery" ); if (in_array("Juneau", $capitals)) { echo "Exists!"; } else { echo "Does not exist!"; } 查找是否存在键使用array_key_exists()函数 复制代码 代码如下: $capitals = array( "Arizona" => "Phoenix", "Alaska" => "Juneau", "Alabama" => "Montgomery" ); if (array_key_exists("Alaska", $capitals)) { echo "Key exists!"; } else { echo "Key does not exist!"; } 9、数组查找 这个是老生常谈了,基本上都用的到array_search()函数 复制代码 代码如下: $capitals = array( "Arizona" => "Phoenix", "Alaska" => "Juneau", "Alabama" => "Montgomery" ); $state = array_search("Juneau", $capitals); // $state = "Alaska" 10、使用php标准函数库 一口气介绍这个多操作array的函数,如果您还觉得不过瘾,可以继续查看Standard PHP Library 中的内容^_^ 复制代码 代码如下: $capitals = array( "Arizona" => "Phoenix", "Alaska" => "Juneau", "Alabama" => "Montgomery" ); $arrayObject = new ArrayObject($capitals); foreach ($arrayObject as $state => $capital) { printf("The capital of %s is %s<br />", $state, $capital); } // The capital of Arizona is Phoenix // The capital of Alaska is Juneau // The capital of Alabama is Montgomery
收藏该网址