php里面不只有索引數(shù)組。PHP中不但支持以數(shù)字為鍵名的索引數(shù)組,還支持以字符串或字符串、數(shù)字混合為鍵名的關聯(lián)數(shù)組。關聯(lián)數(shù)組的下標(鍵名)由數(shù)值和字符串混合的形式組成,只要數(shù)組中有一個鍵名不是數(shù)字,那么這個數(shù)組就是關聯(lián)數(shù)組。如果鍵名是一個字符串,則要給這個鍵名加上一個定界修飾符:單引號“''”或雙引號“""”。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦
php里面不只有索引數(shù)組。
在 PHP 數(shù)組中,無論什么類型的鍵名都會有一個值與其相對應,即一個鍵/值對。
根據(jù)數(shù)組鍵名數(shù)據(jù)類型的不同,我們可以把 PHP 數(shù)組分為兩種:
-
以數(shù)字作為鍵名的稱為索引數(shù)組(Indexed Array);
索引數(shù)組的下標(鍵名)由數(shù)字組成,默認從 0 開始,每個數(shù)字對應一個數(shù)組元素在數(shù)組中的位置,不需要特別指定,PHP 會自動為索引數(shù)組的鍵名賦一個整數(shù)值,然后從這個值開始自動遞增。
-
以字符串或字符串、數(shù)字混合為鍵名的數(shù)組稱為關聯(lián)數(shù)組(Associative Array)。
關聯(lián)數(shù)組的下標(鍵名)由數(shù)值和字符串混合的形式組成,如果一個數(shù)組中有一個鍵名不是數(shù)字,那么這個數(shù)組就是關聯(lián)數(shù)組。如下所示:
<?php header('content-type:text/html;charset=utf-8'); $array=array("id"=>1,"name"=>"李華","age"=>23,"1"=>1,"id2"=>52); var_dump($array);//打印數(shù)組 ?>
關聯(lián)數(shù)組的鍵名可以是任何一個整數(shù)或字符串。如果鍵名是一個字符串,則要給這個鍵名加上一個定界修飾符——單引號' '或雙引號" "。對于索引數(shù)組,為了避免混清,最好也加上定界符。
注:鍵名不可以為NULL。
擴展知識:循環(huán)遍歷關聯(lián)數(shù)組
在PHP中,可以利用foreach語句循環(huán)遍歷關聯(lián)數(shù)組。
foreach是專門為遍歷數(shù)組而設計的語句,是遍歷數(shù)組時常用的方法,在遍歷數(shù)組方面提供了很大的便利;PHP5后還可以遍歷對象(foreach僅能夠應用于數(shù)組和對象)。
foreach語句遍歷數(shù)組與數(shù)組下標無關,且可以用于不連續(xù)的索引數(shù)組和以字符串為下標的關聯(lián)數(shù)組。
-
該語句有兩種語法格式:
語法格式1:
foreach ($array as $value){ 語句塊; }
遍歷給定的 $array 數(shù)組,在每次循環(huán)中將當前數(shù)組的值賦給 $value。
-
語法格式2:
foreach ($array as $key => $value){ 語句塊; }
遍歷給定的 $array 數(shù)組,在每次循環(huán)中會將當前數(shù)組的值賦給 $value,鍵名賦給 $key。
說明:
foreach語句在每次循環(huán)時,數(shù)組內(nèi)部的指針會向前移一步,這樣在下一次循環(huán)中會得到下一個數(shù)組元素,直到遍歷到數(shù)組的末尾,停止遍歷并退出循環(huán)。
推薦學習:《PHP視頻教程》