php數組key(下標)可以不從0開始;PHP中數組的下標預設是從0開始的,但不是全部都是0開始,可以特別指定數組的下標,PHP會依照指定的下標進行自增。 PHP數組的下標可以整數,也可以是字串;下標為字串的數組為關聯數組,是具有特殊索引方式的數組;下標為數字的數組為索引數組,其下標值必須為整數。
本教學操作環境:windows7系統、PHP8版、DELL G3電腦
php陣列key(下標)可以不從0開始
PHP中的數字所以數組的下標預設從0開始,不需要特別指定,PHP會自動為其分配一個整數數值的下標值,然後自增。
<?php header('content-type:text/html;charset=utf-8'); $array[] = '苹果'; $array[] = '香蕉'; $array[] = '梨'; $array[] = '桃子'; var_dump($array); ?>
當然也可以指定開始的下標,PHP會依照指定的下標進行自增。 例如:
<?php header('content-type:text/html;charset=utf-8'); $array[2] = '苹果'; $array[] = '香蕉'; $array[] = '梨'; $array[] = '桃子'; var_dump($array); ?>
我們也可以任意指定數組的鍵名保存數組值,例如:
<?php header('content-type:text/html;charset=utf-8'); $array[2] = '苹果'; $array[4] = '香蕉'; $array[9] = '梨'; $array[1] = '桃子'; var_dump($array); ?>
擴充知識:
php中,陣列的下標可以整數--索引數組,也可以是字串--關聯數組
索引陣列的下標(鍵名)由整數值組成,且預設從0 開始,每個數字對應一個陣列元素在陣列中的位置,不需要特別指定,PHP 會自動為索引數組的鍵名賦一個整數值,然後從這個值開始自動遞增。
關聯陣列的鍵名可以是任何一個整數或字串。如果鍵名是字串,則要給這個鍵名加上定界修飾符-單引號' '或雙引號" "。對於索引數組,為了避免混清,最好也加上定界符。在
php中,陣列的元素順序不是由下標決定,而是由其「加入」的順序決定
$arr1 = array(元素1,元素2,。。。。。。); array(1,1.1,5,'abc',true,false); //可以存储任何数据,此时为默认下标 array(2=>1,4=>1.1,3=>5,7=>'abc',0=>true); //下标可任意设定(无需顺序,无需连续) array(2=>1,1.1,1=>5,'abc',0=>true); //可以加下标,也可以不加,不加下标则为默认下标 //默认下标规则:前面已经用过的最大数字下标+1 //这个数字的下标分别是:2,3,1,4,0 array(2=>1,'dd'=>5,1=>1.1,'abc',0=>true); //混合下标,同样遵循默认下标规则 array(-2=>1,'dd'=>5,1.1,'abc',true); //负数下标不算在整数下标中,而只当作字符下标 //则这个数组最后三项的下标为:0,1,2 array(2.7=>1,'dd'=>5,1=>1.1,'abc',true); //浮点数下标会自动转换为整数,且直接去掉小数部分 array("2.7"=>1,'dd'=>5,"11"=>1.1,'abc',true); //纯数字字符串下标,当作数字看待 array(2=>1,'dd'=>5,true=>1.1,'abc',false=>true); //布尔值当作下标,则true为1,false为0 array(2=>1,'dd'=>5,2=>1.1,'abc',true); //如果下标跟前面的重复,则单纯覆盖前面同名下标的值
其他形式:
$arr1[] = 1; $arr1[] = 5; $arr1[] = 1.1; ...... //直接在变量后面使用[],就成为数组,并依次赋值 $arr2['aa'] = 1; $arr2['bb'] = 5; $arr2[5] = 1.1; ...... //这种形式写的下标,其实跟使用array语法结构几乎一样
推薦學習:《PHP影片教學》
以上是php數組key可以不從0開始嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!