PHP數組的總結(很全面啊)

來源:互聯網
上載者:User

標籤:

一、什麼是數組
數組就是一組資料的集合,把一系列資料群組織起來,形成一個可操作的整體。數組的每個實體都包含兩項:鍵和值。

二、聲明資料
在PHP中聲明數組的方式主要有兩種:一是應用array()函式宣告數組,一是直接為數組元素賦值。
<1>array()函式宣告的數組的方式array([mixed...]) 參數mixed的文法為key=>value
如,<?php
$array=array("1"=>"編","2"=>"程","3"=>"詞","4"=>"典");
print_r($array);
echo "<br>";
echo $array[1]; //注意:下標預設是從0開始       
echo $array[2];        
echo $array[3];        
echo $array[4];        
?>
<2>直接為數組元素賦值。如果在建立數組時不知所建立數組的大小,或在實際編寫程式時數組的大小可能發生變化,採用這種數組建立的方法較好。
如,<?php
$array[1]="I";
$array[2]="love";
$array[3]="PHP";
print_r($array); //輸出所建立數組的結構
?>

三、數組的類型
PHP支援兩種數組:索引數組(indexed array)和聯合數組(associative array),前者使用數字作為鍵,後者使用字串作為鍵。

四、輸出數組
在PHP中對數組元素輸出,可以通過echo和print語句來實現,但這隻能對數組中某一元素進行輸出;要將數組結構輸出則要使用print_r()函數,其文法:print_r(mixed expression),參數expression為普通的整形、字元型或實型變數則輸出該變數本身,如果該參數為數組,則按一定索引值和元素的順序顯示出該數組中的所有元素。

五、數組的構造
一維數組:
當一個數組的元素是變數時,則稱其為一維數組。
聲明一位元組: 類型說明符 數組名[常量運算式];
二維數組:
當一個數組的元素是一個一位元組時,則稱之為二維數組。
如,<?php
$str = array (
     "網路程式設計語言"=>array ("PHP","JSP","ASP"),
"體育項目"=>array ("m"=>"足球","n"=>"籃球")); 
print_r ( $str) ;
?>

六、遍曆數組
遍曆數組中的所有元素是常用的一種操作,在遍曆的過程中可以完成查詢或其他功能。在PHP中遍曆數組的方法有多種,下面介紹最常用的兩種方法。
<1>使用foreach結構遍曆數組;
<2>使用list()函數遍曆數組,list()函數僅能用於數字索引的數組,且數字索引從0開始。
例:綜合使用list()和each()認證使用者登入:
<?php
//輸出使用者登入資訊
while(list($name,$value)=each($_POST)){
if($name!="submit"){
   echo "$name=$value<br>";
}
}
?>
七、統計數組元素個數
在PHP中,使用count()函數對數組中的元素個數進行統計,文法為:int coun(mixed array[,int mode]),其中參數array為必要參數,mode為選擇性參數,若選中COUNT——RECURSIVE(或1),本函數將遞迴地對數組數組。如,
<?php
$array = array("php" => array("PHP函數參考大全","PHP程式開發範例寶典","PHP資料庫系統開發完全手冊"),
               "asp" => array("ASP經驗技巧寶典")
         ); //聲明一個二維數組        
echo count($array,COUNT_RECURSIVE);//遞迴統計數組元素的個數,運行結果為6
?>

八、數組排序
<1>使用sort()和rsort()分別對數組進行升序和降序,如,
<?php
$array=array(5,26,37,18,9,42,88,66);
$array1=sort($array);        
for($i=0;$i<count($array);$i++){   
   echo $array[$i]."&nbsp;&nbsp;";   
}
echo "<br>"; 
$array1=rsort($array);       
for($i=0;$i<count($array);$i++){      
echo $array[$i]."&nbsp;&nbsp";
}
?>
運行結果:
5 9 18 26 37 42 66 88 
88 66 42 37 26 18 9 5   
<2>使用ksort()和asort()對關聯陣列排序
如果使用了相關數組,在排序後還要保持關鍵字和值的排序一致,這是就需要使用ksort()和asort()函

數,如,
<?php
$array=array(‘php‘=>1,‘jsp‘=>2,‘asp‘=>3);
ksort($array);
print_r($array);
echo "<br>";
asort($array);
print_r($array);
?>
運行結果:
Array ( [asp] => 3 [jsp] => 2 [php] => 1 ) 
Array ( [php] => 1 [jsp] => 2 [asp] => 3 )

(轉)PHP數組的總結(很全面啊)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.