程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> PHP 數組基本操作方法詳解

PHP 數組基本操作方法詳解

編輯:PHP綜合

數組的概念

數組(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 數組基本操作方法詳解全部內容了,希望大家多多支持~

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved