首頁  >  文章  >  後端開發  >  php數組下標只能從0開始嗎

php數組下標只能從0開始嗎

WBOY
WBOY原創
2022-07-22 15:01:363040瀏覽

PHP數組下標不是只能從0開始;PHP中數組的下標預設是從0開始的,但並不是全部都是0開始,可以特別指定數組的下標,PHP會根據指定的下標進行自增,語法為「$array = array(指定下標=>"第一個元素","第二個元素"...)」。

php數組下標只能從0開始嗎

本文操作環境:Windows10系統、PHP8.1版、Dell G3電腦

php陣列下標不是只能從0開始

PHP中的數字所以數組的下標預設從0開始,不需要特別指定,PHP會自動為其分配一個整數數值的下標值,然後自增。

當然也可以指定開始的下標。例如:

<?php
$temp_number = array(2=>"one","two","three","four");
print_r($temp_number);
?>

輸出結果:

php數組下標只能從0開始嗎

#這樣在鍵名值2、3、4、5的位置分別保存"one" ,"two","three","four"四個元素值。

我們也可以任意指定數組的鍵名保存數組值,例如:

$temp_number = array(2=>"one",4=>"two",6=>"three");

#輸出結果:

php數組下標只能從0開始嗎

這樣在鍵名值2、4、6的位置分別保存著"one","two","three"三個陣列元素的值。

擴充知識

在陣列基礎:

php中,陣列的下標可以整數,也可以在字串

php中,陣列的元素順序不是由下標決定,而是由其「加入」的順序決定

定義:

$arr1 = array(元素1,元素2,。。。。。。);
array(1,1.1,5,&#39;abc&#39;,true,false); //可以存储任何数据,此时为默认下标
array(2=>1,4=>1.1,3=>5,7=>&#39;abc&#39;,0=>true); //下标可任意设定(无需顺序,无需连续)
array(2=>1,1.1,1=>5,&#39;abc&#39;,0=>true); //可以加下标,也可以不加,不加下标则为默认下标
//默认下标规则:前面已经用过的最大数字下标+1
//这个数字的下标分别是:2,3,1,4,0
array(2=>1,&#39;dd&#39;=>5,1=>1.1,&#39;abc&#39;,0=>true); //混合下标,同样遵循默认下标规则
array(-2=>1,&#39;dd&#39;=>5,1.1,&#39;abc&#39;,true); //负数下标不算在整数下标中,而只当作字符下标
//则这个数组最后三项的下标为:0,1,2
array(2.7=>1,&#39;dd&#39;=>5,1=>1.1,&#39;abc&#39;,true); //浮点数下标会自动转换为整数,且直接去掉小数部分
array("2.7"=>1,&#39;dd&#39;=>5,"11"=>1.1,&#39;abc&#39;,true); //纯数字字符串下标,当作数字看待
array(2=>1,&#39;dd&#39;=>5,true=>1.1,&#39;abc&#39;,false=>true); //布尔值当作下标,则true为1,false为0
array(2=>1,&#39;dd&#39;=>5,2=>1.1,&#39;abc&#39;,true); //如果下标跟前面的重复,则单纯覆盖前面同名下标的值

其他形式:

$arr1[] = 1;
$arr1[] = 5;
$arr1[] = 1.1;
......  //直接在变量后面使用[],就成为数组,并依次赋值
$arr2[&#39;aa&#39;] = 1;
$arr2[&#39;bb&#39;] = 5;
$arr2[5] = 1.1;
......  //这种形式写的下标,其实跟使用array语法结构几乎一样

推薦學習:《PHP影片教學

以上是php數組下標只能從0開始嗎的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn