Php基础数组篇
1、變量組合成數(shù)組:
compact()函數(shù)可以通過變量名的字符串清單來將相關(guān)變量組合成一個關(guān)聯(lián)數(shù)組
<?php $zero = 0; $one = 1; $two = 2; $three = 3; $arr = compact("zero", "one", "two", "three"); print_r($arr); ?> 輸出:Array( [zero] => 0 [one] => 1 [two] => 2 [three] => 3)2、在數(shù)組頭添加元素
array_unshift($array,'元素1',‘元素2’....)
3、在數(shù)組結(jié)尾添加元素
array_push($array,'元素1',‘元素2’....)
4、刪除數(shù)組頭元素
array_shift($array)
5、刪除數(shù)組尾元素
array_pop($array)
6、創(chuàng)建指定范圍的數(shù)組
$array1 = range(0,100,10);//0為起始值 也可以是字母,100為結(jié)束值,10為步進值(默認步進值為1)
$array = range('a','z',1)
7、數(shù)組查找函數(shù):
in_array(value,array,type) 該函數(shù)的作用是在數(shù)組array中搜索指定的value值,type是可選參數(shù),如果設(shè)置該參數(shù)為 true ,則檢查搜索的數(shù)據(jù)與數(shù)組的值的類型是否相同,即恒等于。
<?php $people = array("Peter", "Joe", "Glenn", "Cleveland"); if(in_array("Glenn",$people)){echo "Match found"; }else{echo "Match not found"; } ?>array_key_exists(key,array)
該函數(shù)是判斷某個數(shù)組array中是否存在指定的 key,如果該 key 存在,則返回 true,否則返回 false。
<?php $a=array("a"=>"Dog","b"=>"Cat"); if(array_key_exists("a",$a)){echo "Key exists!"; }else{echo "Key does not exist!"; } ?>array_search(value,array,strict)函數(shù)與 in_array() 一樣,在數(shù)組中查找一個鍵值。如果找到了該值,則返回匹配該元素所對應(yīng)的鍵名。如果沒找到,則返回 false
經(jīng)過實際性能對比,在數(shù)據(jù)量不大的時候,比如小于1000,查找用哪一種都行,都不會成為性能上的瓶頸。但當數(shù)據(jù)量比較大的時候,用 array_key_exists 比較合適。據(jù)測試 array_key_exist 要比 in_array 效率高十幾甚至幾十倍。
8、數(shù)組遍歷方法:
foreach()是一個用來遍歷數(shù)組中數(shù)據(jù)的最簡單有效的方法。(建議使用)
<?php $urls= array('aaa','bbb','ccc','ddd'); foreach ($urls as $url){ echo "This Site url is $url! <br />"; } ?> while() 和 list(),each()配合使用 <?php $urls= array('aaa','bbb','ccc','ddd'); while(list($key,$val)= each($urls)) { echo "This Site url is $val.<br />"; } ?> for()遍歷數(shù)組 <?php $urls= array('aaa','bbb','ccc','ddd'); for ($i= 0;$i< count($urls); $i++){ $str= $urls[$i]; echo "This Site url is $str.<br />"; } ?>9、數(shù)組排序:
sort()函數(shù)用于對數(shù)組單元從低到高進行排序。
rsort()函數(shù)用于對數(shù)組單元從高到低進行排序。
asort() 函數(shù)用于對數(shù)組單元從低到高進行排序并保持索引關(guān)系
arsort()函數(shù)用于對數(shù)組單元從高到低進行排序并保持索引關(guān)系。
ksort()函數(shù)用于對數(shù)組單元按照鍵名從低到高進行排序。
krsort()函數(shù)用于對數(shù)組單元按照鍵名從高到低進行排序。
10、判斷數(shù)組是否為空
$arr = array(); echo empty($arr)?'該數(shù)組為空<hr/>':'該數(shù)組不為空<hr/>';11、移除數(shù)組中重復(fù)的值 array_unique() $arr = array(9,11,1,2,3,9,2,3,4);print_r(array_unique($arr));echo '<hr />';12、遞歸遍歷多維數(shù)組 <?php /* * ------------------------------------------------- * Author : nowamagic * Url : www.nowamagic.net * Date : 2011-03-09 * ------------------------------------------------- */ function arr_foreach ($arr) {if (!is_array ($arr)) {return false;}foreach ($arr as $key => $val ) {if (is_array ($val)) {arr_foreach ($val);} else {echo $val.'<br/>';}} }$arr1 = array (1=>array(11,12,13,14=>array(141,142)),2,3,4,5);echo '<pre>'; print_r($arr1); echo '<pre>';arr_foreach ($arr1); ?>
總結(jié)
- 上一篇: Php基础数学运算篇
- 下一篇: Php基础文件操作