Heim  >  Artikel  >  Backend-Entwicklung  >  So bestimmen Sie, ob es sich in PHP um ein eindimensionales Array oder ein zweidimensionales Array handelt

So bestimmen Sie, ob es sich in PHP um ein eindimensionales Array oder ein zweidimensionales Array handelt

青灯夜游
青灯夜游Original
2022-04-11 20:32:274257Durchsuche

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)“.

So bestimmen Sie, ob es sich in PHP um ein eindimensionales Array oder ein zweidimensionales Array handelt

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(&#39;content-type:text/html;charset=utf-8&#39;);   
$array = array("php", 11, &#39;&#39;, 12, "PHP中文网",13,"green",2021,"mysql","14",15); 
	if (count($array) == count($array, 1)) {
	    echo &#39;是一维数组&#39;;
	} else {
	    echo &#39;是二维数组&#39;;
}
?>

So bestimmen Sie, ob es sich in PHP um ein eindimensionales Array oder ein zweidimensionales Array handelt

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.

So bestimmen Sie, ob es sich in PHP um ein eindimensionales Array oder ein zweidimensionales Array handelt

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn