數組的概念
數組(array)是 PHP 中一個非常重要的概念,我們可以把數組看做一系列類似的數據的集合,實際上數組是一個有序圖。
PHP 還提供了超過 70 個內建函數來操作數組。
創建數組
使用 array() 語言結構創建數組:
<?php $arr_age1 = array(18, 20, 25); // 或者: $arr_age2 = array("wang"=>18, "li"=>20, "zhang"=>25); // 空數組: $arr_age3 =array(); ?>
也可以使用數組控制器 [] 來創建數組:
<?php $arr_age1[] = 18; $arr_age1[] = 20; $arr_age1[] = 25; // 或者: $arr_age2["wang"] = 18; $arr_age2["li"] = 20; $arr_age2["zhang"] = 25; ?>
數組鍵名與值
數組實體都包含兩項:鍵名和值。
在下面創建數組的例子中:
$arr_age1 = array(18, 20, 25);我們給 $arr_age1 分配了 3 個數組單元(也稱元素),其值分別是 18、20 和 25。系統會自動給這 3 個數組單元分配 3 個數字序號,分別為 0、1 和 2。即 $arr_age1 數組的完整結構為:
Array ( [0] => 18 [1] => 20 [2] => 25 ) 這個系統自動分配的序號稱為鍵名,這種鍵名為數字 ID 的數組稱為 索引數組( indexed array )。
當然也可以手動指定鍵名:
$arr_age1 = array( 0 => 18, 1 => 20, 2 => 25 );
注意:手動指定鍵名可以不從 0 開始,也可以不用按數字順序來指定鍵名。當一個新單元加入數組而沒有指定健名時,系統將自動的在現有數組中最大的數字鍵中加 1 ,作為新單元的鍵名。
當使用字符串而非數字索引作為鍵名時,這種數組稱為 關聯數組( associative array ):
$arr_age2 = array("wang"=>18, "li"=>20, "zhang"=>25);但在 PHP 中,這兩種數組沒有明顯的界限,二者可以混合使用。注意關聯數組中對於鍵名大小寫是敏感的。
輸出數組單元值
可以使用如下方式訪問輸出數組單元值:
echo $arr_age1[0]; //輸出:18
echo $arr_age2["wang"]; //輸出:18某些情況下為了調試,可能需要輸出整個數組的數據及結構,這時候需要使用 print_r() 或 var_dump() 函數,具體參見PHP print_r 與 var_dump 輸出數組
操作數組單元
可以象操作普通變量一樣操作數組單元,如:
<?php $arr_age2 = array("wang"=>18, "li"=>20, "zhang"=>25); $arr_age2["wang"] = $arr_age2["wang"] + 10; ?>
現在 $arr_age2 為:
Array ( [wang] => 28 [li] => 20 [zhang] => 25 ) 檢查一個數組單元是被設定,請使用 isset() 。
銷毀數組
使用 unset() 函數來銷毀一個數組單元或整個數組:
<?php unset($arr_age1[0]); unset($arr_age1); ?>
多維數組
如果數組中的值也是數組時,我們就稱這樣的數組為遞歸數組或多維數組。
例子:
<?php $all = array( "fruits" => array( "a"=>"orange", "b"=>"banana", "c"=>"apple"), "ages" => array( 18, 20, 25 ) ); echo $all["fruits"]["c"]; //輸出apple echo $all["ages"][0]; //輸出18 ?>
以上就是小編為大家帶來的PHP 數組基本操作方法詳解全部內容了,希望大家多多支持~