溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶(hù)服務(wù)條款》

php如何判斷一個(gè)數(shù)組是否為索引數(shù)組

發(fā)布時(shí)間:2022-09-21 09:35:02 來(lái)源:億速云 閱讀:120 作者:iii 欄目:編程語(yǔ)言

這篇文章主要介紹了php如何判斷一個(gè)數(shù)組是否為索引數(shù)組的相關(guān)知識(shí),內(nèi)容詳細(xì)易懂,操作簡(jiǎn)單快捷,具有一定借鑒價(jià)值,相信大家閱讀完這篇php如何判斷一個(gè)數(shù)組是否為索引數(shù)組文章都會(huì)有所收獲,下面我們一起來(lái)看看吧。

判斷步驟:1、用array_keys()獲取原數(shù)組的全部鍵名,語(yǔ)法“array_keys(數(shù)組)”;2、用array_filter()過(guò)濾數(shù)組,語(yǔ)法“function f($v){return(is_string($v));}$res=array_filter($keys,"f");”,會(huì)返回一個(gè)包含字符串元素的過(guò)濾數(shù)組;3、判斷過(guò)濾數(shù)組是否為空數(shù)組,如果為空則數(shù)組是索引數(shù)組。

本教程操作環(huán)境:windows7系統(tǒng)、PHP8.1版、DELL G3電腦

在php中,索引數(shù)組的下標(biāo)(鍵名)由數(shù)字組成,如果一個(gè)數(shù)組中有一個(gè)鍵名不是數(shù)字,那么這個(gè)數(shù)組就是關(guān)聯(lián)數(shù)組(不是索引數(shù)組)。

因此只需要判斷數(shù)組的鍵名是否都為數(shù)字,即可判斷一個(gè)數(shù)組是否為索引數(shù)組。

實(shí)現(xiàn)步驟:

步驟1:使用array_keys()函數(shù)獲取原數(shù)組的全部鍵名

array_keys() 函數(shù)返回包含數(shù)組中所有鍵名的一個(gè)新數(shù)組。

array_keys(array,value,strict)
參數(shù)描述
array必需。規(guī)定數(shù)組。
value可選。您可以指定鍵值,然后只有該鍵值對(duì)應(yīng)的鍵名會(huì)被返回。
strict可選。與 value 參數(shù)一起使用??赡艿闹担?ul class=" list-paddingleft-2">
  • true - 返回帶有指定鍵值的鍵名。依賴(lài)類(lèi)型,數(shù)字 5 與字符串 "5" 是不同的。

  • false - 默認(rèn)值。不依賴(lài)類(lèi)型,數(shù)字 5 與字符串 "5" 是相同的。

  • <?php
    header('content-type:text/html;charset=utf-8');   
    $arr=array("r"=>"red",2,3,"hello",5,6);
    var_dump($arr);
    $keys=array_keys($arr);
    var_dump($keys);
    ?>

    php如何判斷一個(gè)數(shù)組是否為索引數(shù)組

    步驟2:使用array_filter()和is_string()函數(shù)過(guò)濾數(shù)組,返回鍵名數(shù)組中的字符串元素

    function f($v){
    	 return(is_string($v));
    }
    $res=array_filter($keys,"f");
    var_dump($res);

    php如何判斷一個(gè)數(shù)組是否為索引數(shù)組

    會(huì)返回一個(gè)包含字符串元素的過(guò)濾數(shù)組

    步驟3:判斷過(guò)濾數(shù)組是否為空數(shù)組

    $res==[]
    • 如果為空,則數(shù)組是索引數(shù)組

    • 如果不為空,則數(shù)組不是索引數(shù)組,是關(guān)聯(lián)數(shù)組

    實(shí)現(xiàn)代碼:

    <?php
    header('content-type:text/html;charset=utf-8');   
    function f($v){
    		 return(is_string($v));
    }
    function fun($arr){
    	$keys=array_keys($arr);
    	
    	$res=array_filter($keys,"f");
    	if($res==[]){
    		echo "數(shù)組是索引數(shù)組<br>";
    	}else{
    		echo "數(shù)組不是索引數(shù)組,是關(guān)聯(lián)數(shù)組<br>";
    	}
    }
    
    
    $arr=array("r"=>"red",2,3,"hello",5,6);
    var_dump($arr);
    fun($arr);
    $arr=array(1,2,3,"hello",5,6);
    var_dump($arr);
    fun($arr);
    ?>

    php如何判斷一個(gè)數(shù)組是否為索引數(shù)組

    關(guān)于“php如何判斷一個(gè)數(shù)組是否為索引數(shù)組”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對(duì)“php如何判斷一個(gè)數(shù)組是否為索引數(shù)組”知識(shí)都有一定的了解,大家如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道。

    向AI問(wèn)一下細(xì)節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

    php
    AI