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