您好,登錄后才能下訂單哦!
這篇文章主要介紹“php如何判斷是一維數組還是二維數組”,在日常操作中,相信很多人在php如何判斷是一維數組還是二維數組問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”php如何判斷是一維數組還是二維數組”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
在php中,可利用count()函數來判斷,該函數能獲取數組長度,如果省略第二個參數,將只獲取一維的元素個數;因此只需要比較一下省略參數和不省略參數時,獲取的長度是否一樣即可,語法“count($arr)== count($arr,1)”。
本教程操作環境:windows7系統、PHP7.1版、DELL G3電腦
在php中,可利用count()函數來判斷。
<?php header('content-type:text/html;charset=utf-8'); $array = array("php", 11, '', 12, "億速云",13,"green",2021,"mysql","14",15); if (count($array) == count($array, 1)) { echo '是一維數組'; } else { echo '是二維數組'; } ?>
方案原理:
count ( mixed $var [, int $mode ] )
– 計算數組中的單元數目或對象中的屬性個數
$mode:為可選參數,可以省略。
如果省略 $mode 參數,或者將其設置為 COUNT_NORMAL 或者 0,count() 函數將不檢測多維數組;
如果 $mode 設置為 COUNT_RECURSIVE 或者 1,count() 函數將遞歸計算數組中元素的個數,對于計算多維數組的元素個數尤為有用。
如果省略 $mode 參數,count則不檢測多維數組,將只獲取一維的元素個數。
因此只需要比較一下省略$mode參數和不省略$mode參數時,獲取的長度是否一樣即可判斷是一維數組還是二維數組。
$mode參數示例:
<?php header("Content-type:text/html;charset=utf-8"); $arr= array ("張三", 25, array("高數","PHP教程","英語"), ); //輸出語句 echo "數組長度為:".count($arr,1); echo "<br>不遞歸檢測數組,長度為:".count($arr); ?>
輸出:
數組長度為:6 不遞歸檢測數組,長度為:3
看了上面的輸出結果,是不是感到疑惑,數組中不是只有5個元素("張三"、25、"高數"、"PHP教程"、"英語")嗎,為什么結果顯示的數組長度不是5,而是6呢?
其實是因為,此時count()函數循環統計二維數組中的所有元素,“array("高數","PHP教程","英語")”會被當做一個整體統計一次,它里面的元素("高數"、"PHP教程"、"英語")又會被統計一次,所以最終結果為 6。
到此,關于“php如何判斷是一維數組還是二維數組”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。