Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich in PHP zwischen sequentiellen und assoziativen Arrays unterscheiden?

Wie kann ich in PHP zwischen sequentiellen und assoziativen Arrays unterscheiden?

Mary-Kate Olsen
Freigeben: 2024-12-09 04:25:11
Original
635 Leute haben es durchsucht

How Can I Distinguish Between Sequential and Associative Arrays in PHP?

Bestimmen der Natur von PHP-Arrays: assoziativ oder sequentiell

In PHP sind Arrays von Natur aus assoziativ und es fehlen integrierte Mechanismen zur Unterscheidung zwischen numerischen Schlüsseln beginnend bei 0 ( sequentielle Arrays) und beliebige Zeichenfolgenschlüssel (assoziative Arrays). Diese Unterscheidung kann für verschiedene Programmierszenarien von entscheidender Bedeutung sein.

Sequentielle und assoziative Arrays unterscheiden

Um festzustellen, ob ein Array sequentiell ist, können Sie die neu eingeführte Funktion array_is_list() in PHP 8.1 nutzen. Für ältere PHP-Versionen kann jedoch eine benutzerdefinierte Funktion eine praktische Alternative darstellen:

1

2

3

4

5

6

7

function array_is_list(array $arr)

{

    if ($arr === []) {

        return true;

    }

    return array_keys($arr) === range(0, count($arr) - 1);

}

Nach dem Login kopieren

Diese Funktion prüft, ob das Array leer ist oder ob seine Schlüssel eine fortlaufende Folge von Zahlen beginnend bei 0 sind. Wenn beide Bedingungen erfüllt sind erfüllt sind, wird das Array als sequentiell betrachtet.

Beispielverwendung

Zur Veranschaulichung der Funktionalität von array_is_list() Funktion:

1

2

3

4

5

var_dump(array_is_list([])); // true

var_dump(array_is_list(['a', 'b', 'c'])); // true

var_dump(array_is_list(["0" => 'a', "1" => 'b', "2" => 'c'])); // true

var_dump(array_is_list(["1" => 'a', "0" => 'b', "2" => 'c'])); // false

var_dump(array_is_list(["a" => 'a', "b" => 'b', "c" => 'c'])); // false

Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie kann ich in PHP zwischen sequentiellen und assoziativen Arrays unterscheiden?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage