Heim > Artikel > Backend-Entwicklung > So bestimmen Sie, ob es sich in PHP um ein eindimensionales Array oder ein zweidimensionales Array handelt
In PHP können Sie die Funktion count() verwenden, um die Länge des Arrays zu ermitteln. Wenn Sie den zweiten Parameter weglassen, erhalten Sie nur die Anzahl der Elemente in einer Dimension Vergleichen Sie das Weglassen von Parametern und das Nicht-Weglassen von Parametern. Bei gleicher Länge lautet die Syntax „count($arr)== count($arr,1)“.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
In PHP können Sie die Funktion count() zur Beurteilung verwenden.
<?php header('content-type:text/html;charset=utf-8'); $array = array("php", 11, '', 12, "PHP中文网",13,"green",2021,"mysql","14",15); if (count($array) == count($array, 1)) { echo '是一维数组'; } else { echo '是二维数组'; } ?>
Prinzip der Lösung:
count ( mixed $var [, int $mode ] )
– Berechnen Sie die Anzahl der Zellen im Array oder die Anzahl der Attribute im Objekt
$mode: ist ein optionaler Parameter und kann weggelassen werden.
Wenn der $mode-Parameter weggelassen oder auf COUNT_NORMAL oder 0 gesetzt ist, erkennt die count()-Funktion keine mehrdimensionalen Arrays.
Wenn $mode auf COUNT_RECURSIVE oder 1 eingestellt ist, ist count() Die Funktion berechnet die Anzahl der Elemente in einem Array rekursiv und ist besonders nützlich für die Berechnung der Anzahl von Elementen in mehrdimensionalen Arrays.
Wenn der Parameter $mode weggelassen wird, erkennt count keine mehrdimensionalen Arrays und ermittelt nur die Anzahl der Elemente in einer Dimension.
Sie müssen also nur vergleichen, ob die erhaltenen Längen gleich sind, wenn der Parameter $mode weggelassen wird, und wenn der Parameter $mode nicht weggelassen wird, können Sie feststellen, ob es sich um ein eindimensionales Array oder ein zweidimensionales Array handelt.
$mode-Parameterbeispiel:
<?php header("Content-type:text/html;charset=utf-8"); $arr= array ("张三", 25, array("高数","PHP教程","英语"), ); //输出语句 echo "数组长度为:".count($arr,1); echo "<br>不递归检测数组,长度为:".count($arr); ?>
Ausgabe:
数组长度为:6 不递归检测数组,长度为:3
Sind Sie nach dem Lesen der obigen Ausgabeergebnisse verwirrt? Es gibt nicht nur 5 Elemente im Array („Zhang San“, 25, „High Number" ", "PHP Tutorial", "English"), warum ist die im Ergebnis angezeigte Array-Länge nicht 5, sondern 6?
Das liegt tatsächlich daran, dass die Funktion count() zu diesem Zeitpunkt eine Schleife durchführt, um alle Elemente im zweidimensionalen Array zu zählen Die Elemente („High Mathematics“, „PHP Tutorial“, „English“) werden erneut gezählt, sodass das Endergebnis 6 ist.
Empfohlen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonSo bestimmen Sie, ob es sich in PHP um ein eindimensionales Array oder ein zweidimensionales Array handelt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!