php數(shù)組key(下標(biāo))可以不從0開(kāi)始;PHP中數(shù)組的下標(biāo)默認(rèn)是從0開(kāi)始的,但并不是全部都是0開(kāi)始,可以特別指定數(shù)組的下標(biāo),PHP會(huì)根據(jù)指定的下標(biāo)進(jìn)行自增。PHP數(shù)組的下標(biāo)可以整數(shù),也可以是字符串;下標(biāo)為字符串的數(shù)組為關(guān)聯(lián)數(shù)組,是一種具有特殊索引方式的數(shù)組;下標(biāo)為數(shù)字的數(shù)組為索引數(shù)組,其下標(biāo)值必須為整數(shù)。
本教程操作環(huán)境:windows7系統(tǒng)、PHP8版、DELL G3電腦
php數(shù)組key(下標(biāo))可以不從0開(kāi)始
PHP中的數(shù)字所以數(shù)組的下標(biāo)默認(rèn)從0開(kāi)始,不需要特別指定,PHP會(huì)自動(dòng)為其分配一個(gè)整型數(shù)值的下標(biāo)值,然后自增。
<?php header('content-type:text/html;charset=utf-8'); $array[] = '蘋(píng)果'; $array[] = '香蕉'; $array[] = '梨'; $array[] = '桃子'; var_dump($array); ?>
當(dāng)然也可以指定開(kāi)始的下標(biāo),PHP會(huì)根據(jù)指定的下標(biāo)進(jìn)行自增。例如:
<?php header('content-type:text/html;charset=utf-8'); $array[2] = '蘋(píng)果'; $array[] = '香蕉'; $array[] = '梨'; $array[] = '桃子'; var_dump($array); ?>
我們也可以任意指定數(shù)組的鍵名保存數(shù)組值,例如:
<?php header('content-type:text/html;charset=utf-8'); $array[2] = '蘋(píng)果'; $array[4] = '香蕉'; $array[9] = '梨'; $array[1] = '桃子'; var_dump($array); ?>
擴(kuò)展知識(shí):
php中,數(shù)組的下標(biāo)可以整數(shù)–索引數(shù)組,也可以是字符串–關(guān)聯(lián)數(shù)組
-
索引數(shù)組的下標(biāo)(鍵名)由整數(shù)值組成,且默認(rèn)從 0 開(kāi)始,每個(gè)數(shù)字對(duì)應(yīng)一個(gè)數(shù)組元素在數(shù)組中的位置,不需要特別指定,PHP 會(huì)自動(dòng)為索引數(shù)組的鍵名賦一個(gè)整數(shù)值,然后從這個(gè)值開(kāi)始自動(dòng)遞增。
-
關(guān)聯(lián)數(shù)組的鍵名可以是任何一個(gè)整數(shù)或字符串。如果鍵名是一個(gè)字符串,則要給這個(gè)鍵名加上一個(gè)定界修飾符——單引號(hào)' '或雙引號(hào)" "。對(duì)于索引數(shù)組,為了避免混清,最好也加上定界符。
php中,數(shù)組的元素順序不是由下標(biāo)決定,而是由其“加入”的順序決定
$arr1 = array(元素1,元素2,。。。。。。); array(1,1.1,5,'abc',true,false); //可以存儲(chǔ)任何數(shù)據(jù),此時(shí)為默認(rèn)下標(biāo) array(2=>1,4=>1.1,3=>5,7=>'abc',0=>true); //下標(biāo)可任意設(shè)定(無(wú)需順序,無(wú)需連續(xù)) array(2=>1,1.1,1=>5,'abc',0=>true); //可以加下標(biāo),也可以不加,不加下標(biāo)則為默認(rèn)下標(biāo) //默認(rèn)下標(biāo)規(guī)則:前面已經(jīng)用過(guò)的最大數(shù)字下標(biāo)+1 //這個(gè)數(shù)字的下標(biāo)分別是:2,3,1,4,0 array(2=>1,'dd'=>5,1=>1.1,'abc',0=>true); //混合下標(biāo),同樣遵循默認(rèn)下標(biāo)規(guī)則 array(-2=>1,'dd'=>5,1.1,'abc',true); //負(fù)數(shù)下標(biāo)不算在整數(shù)下標(biāo)中,而只當(dāng)作字符下標(biāo) //則這個(gè)數(shù)組最后三項(xiàng)的下標(biāo)為:0,1,2 array(2.7=>1,'dd'=>5,1=>1.1,'abc',true); //浮點(diǎn)數(shù)下標(biāo)會(huì)自動(dòng)轉(zhuǎn)換為整數(shù),且直接去掉小數(shù)部分 array("2.7"=>1,'dd'=>5,"11"=>1.1,'abc',true); //純數(shù)字字符串下標(biāo),當(dāng)作數(shù)字看待 array(2=>1,'dd'=>5,true=>1.1,'abc',false=>true); //布爾值當(dāng)作下標(biāo),則true為1,false為0 array(2=>1,'dd'=>5,2=>1.1,'abc',true); //如果下標(biāo)跟前面的重復(fù),則單純覆蓋前面同名下標(biāo)的值
其他形式:
$arr1[] = 1; $arr1[] = 5; $arr1[] = 1.1; ...... //直接在變量后面使用[],就成為數(shù)組,并依次賦值 $arr2['aa'] = 1; $arr2['bb'] = 5; $arr2[5] = 1.1; ...... //這種形式寫(xiě)的下標(biāo),其實(shí)跟使用array語(yǔ)法結(jié)構(gòu)幾乎一樣
推薦學(xué)習(xí):《PHP視頻教程》