PHP-Array: Assoziativ, mehrdimensional

⚡ Intelligente Zusammenfassung

PHP-Arrays speichern viele zusammengehörige Werte in einer einzigen Variable, wodurch sich verwandte Daten einfach gruppieren und verarbeiten lassen. Diese Einführung behandelt numerische, assoziative und mehrdimensionale Arrays, die Array-Vergleichsoperatoren sowie Kernfunktionen wie count, sort, ksort und asort.

  • 🧰 Was Arrays leisten: Ein Array speichert mehrere zusammengehörige Werte in einer einzigen Variablen, auf die über numerische oder benannte Schlüssel anstatt über viele separate Variablen zugegriffen wird.
  • 🔢 Numerische Arrays: Numerische Arrays verwenden ganzzahlige Indexschlüssel, beginnend bei Null, um jedes gespeicherte Element zu lesen oder ihm einen Wert zuzuweisen.
  • 🏷️ Assoziative Arrays: Assoziative Arrays verwenden beschreibende Zeichenketten als Schlüssel, was ideal ist, um Namen mit Werten oder einer Map zu verknüpfen.ping Datenbankfelder.
  • 🧬 Mehrdimensional: Ein mehrdimensionales Array verschachtelt Arrays ineinander, Gruppenping strukturierte Daten wie beispielsweise nach Kategorien geordnete Filme.
  • ️ Feld OperaTore: Der Union-Operator vereint Arrays, während == die Gleichheit der Werte prüft und === zusätzlich die Reihenfolge der Schlüssel und die Datentypen überprüft.
  • 🔧 Array-Funktionen: count, is_array, sort, ksort und asort geben Informationen über den Inhalt von Arrays aus und ordnen diese nach Wert oder Schlüssel neu an.
  • 🤖 KI-Assistent: KI-Tools können Datenbankzeilen in assoziative Arrays umwandeln und beim Debuggen verwirrender mehrdimensionaler Array-Strukturen helfen.

PHP-Arrays

Was ist ein PHP-Array?

Ein PHP-Array ist eine Variable, die mehr als ein zusammenhängendes Datenelement in einer einzigen Variablen speichert.

Stellen Sie sich ein Array als eine Schachtel Pralinen mit Schlitzen darin vor.

Die Box repräsentiert das Array selbst, während die mit Schokoladen gefüllten Felder die im Array gespeicherten Werte darstellen.

Die folgenden Beispiele veranschaulichen die Funktionsweise.

Numerische Arrays

Numerische Arrays verwenden Zahlen als Zugriffsschlüssel.

Ein Zugriffsschlüssel ist ein Verweis auf einen Speicherplatz in einer Array-Variablen.

Der Zugriffsschlüssel wird immer dann verwendet, wenn wir ein Array-Element lesen oder ihm einen neuen Wert zuweisen möchten.

Nachfolgend die Syntax zum Erstellen eines numerischen Arrays in PHP.

Array-Beispiel

<?php
$variable_name[n] = value;
?>

Or

<?php
$variable_name = array(n => value, ...);
?>

HIER,

  • „$variable_name…“ ist der Name der Variablen
  • „[n]“ ist die Zugriffsindexnummer des Elements
  • „Wert“ ist der dem Array-Element zugewiesene Wert.

Betrachten wir nun ein Beispiel für ein numerisches Array.

Angenommen, wir haben 5 Filme, die wir in Array-Variablen speichern möchten.

Wir können dazu das unten gezeigte Beispiel verwenden.

<?php

$movie[0] = 'Shaolin Monk';
$movie[1] = 'Drunken Master';
$movie[2] = 'American Ninja';
$movie[3] = 'Once upon a time in China';
$movie[4] = 'Replacement Killers';

?>

Dabei steht:

PHP-Array

Jedem Film wird eine Indexnummer zugewiesen, mit der sein Wert abgerufen oder geändert werden kann. Betrachten Sie den folgenden Code.

<?php
$movie[0]="Shaolin Monk";
$movie[1]="Drunken Master";
$movie[2]="American Ninja";
$movie[3]="Once upon a time in China";
$movie[4]="Replacement Killers";
echo $movie[3];
$movie[3] = " Eastern Condors";
echo $movie[3];
?>

Ausgang:

Once upon a time in China Eastern Condors

Wie Sie anhand der obigen Beispiele sehen können, ist die Arbeit mit Arrays in PHP beim Umgang mit mehreren Werten gleicher Art sehr einfach und flexibel.

Alternativ können die obigen Arrayvariablen auch mit dem folgenden Code erstellt werden.

<?php
$movie = array(0 => "Shaolin Monk",
1 => "Drunken Master",
2 => "American Ninja",
3 => "Once upon a time in China",
4 => "Replacement Killers" );
echo $movie[4];
?>

Ausgang:

Replacement Killers

Assoziatives PHP-Array

Assoziative Arrays unterscheiden sich von numerischen Arrays dadurch, dass sie beschreibende Namen für die ID-Schlüssel verwenden.

Nachfolgend die Syntax zum Erstellen eines assoziativen Arrays in PHP.

<?php
$variable_name['key_name'] = value;

$variable_name = array('keyname' => value);
?>

HIER,

  • „$variable_name…“ ist der Name der Variablen
  • „['key_name']“ ist der Zugriffsschlüssel des Elements.
  • „Wert“ ist der dem Array-Element zugewiesene Wert.

Nehmen wir an, wir haben eine Gruppe von Personen und möchten jeder Person ihr Geschlecht zu ihrem Namen zuordnen.

Wir können dazu ein assoziatives Array verwenden. Der folgende Code hilft uns dabei.

<?php
$persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female");
print_r($persons);
echo "";
echo "Mary is a " . $persons["Mary"];
?>

HIER,

PHP-Array

Ausgang:

Array ( [Mary] => Female [John] => Male [Mirriam] => Female ) Mary is a Female

Assoziative Arrays sind auch beim Abrufen von Daten aus der Datenbank sehr nützlich.

Die Feldnamen werden als ID-Schlüssel verwendet.

PHP Mehrdimensionale Arrays

Dies sind Arrays, die andere verschachtelte Arrays enthalten.

Der Vorteil mehrdimensionaler Arrays besteht darin, dass wir damit zusammengehörige Daten gruppieren können.

Betrachten wir nun ein praktisches Beispiel, das ein mehrdimensionales PHP-Array implementiert.

Die folgende Tabelle zeigt eine Liste der Filme nach Kategorie.

Filmtitel Kategorie
Pink Panther Komödie
Johannes Englisch Komödie
Stirb langsam Action
Expendables Action
Der Herr der Ringe Episch
Romeo und Julia Romantik
Sieh nichts Böses Hör nichts Böses Komödie

Die oben genannten Informationen können als mehrdimensionales Array dargestellt werden. Der folgende Code zeigt die Implementierung.

<?php
$movies = array(
"comedy" => array("Pink Panther", "John English", "See no evil hear no evil"),
"action" => array("Die Hard", "Expendables"),
"epic" => array("The Lord of the rings"),
"Romance" => array("Romeo and Juliet")
);
print_r($movies);
?>

HIER,

PHP-Array

Ausgang:

Array ( [comedy] => Array ( [0] => Pink Panther [1] => John English [2] => See no evil hear no evil ) [action] => Array ( [0] => Die Hard [1] => Expendables ) [epic] => Array ( [0] => The Lord of the rings ) [Romance] => Array ( [0] => Romeo and Juliet ) )

Eine andere Möglichkeit, dasselbe Array zu definieren, ist folgende:

<?php
$film = array(
"comedy" => array(
0 => "Pink Panther",
1 => "John English",
2 => "See no evil hear no evil"
),
"action" => array (
0 => "Die Hard",
1 => "Expendables"
),
"epic" => array (
0 => "The Lord of the rings"
),
"Romance" => array
(
0 => "Romeo and Juliet"
)
);
echo $film["comedy"][0];
?>

Ausgang:

Pink Panther

Hinweis: Das numerische Array „Movies“ ist im assoziativen Array „Categories“ verschachtelt.

PHP-Arrays: Operatoren

OperaDo. Name Beschreibung Wie man es macht Ausgang
x+y Union Kombiniert Elemente aus beiden Arrays
<?php
$x = array('id' => 1);

$y = array('value' => 10);

$z = $x + $y;
?>
Array([id] => 1 [Wert] => 10)
x == y Gleich Vergleicht zwei Arrays und gibt true zurück, wenn sie gleich sind.
<?php
$x = array("id" => 1);

$y = array("id" => "1");

if($x == $y)
{
echo "true";
}
else
{
echo "false";
}
?>
Wahr oder 1
x === y Identische Vergleicht die Werte und Datentypen
<?php
$x = array("id" => 1);

$y = array("id" => "1");

if($x === $y)
{
echo "true";
}
else
{
echo "false";
}
?>
Falsch oder 0
x != y, x <> y Nicht gleich Gibt „true“ zurück, wenn die beiden Arrays ungleich sind.
<?php
$x = array("id" => 1);

$y = array("id" => "1");

if($x != $y)
{
echo "true";
}
else
{
echo "false";
}
?>
Falsch oder 0
x !== y Nicht identisch Gibt „true“ zurück, wenn die beiden Arrays weder im Wert noch im Typ identisch sind.
<?php
$x = array("id" => 1);

$y = array("id" => "1");

if($x !== $y)
{
echo "true";
}
else
{
echo "false";
}
?>
Wahr oder 1

PHP-Array-Funktionen

Zählfunktion

Die Funktion `count` dient dazu, die Anzahl der Elemente in einem PHP-Array zu zählen. Der folgende Code zeigt die Implementierung.

<?php
$lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith");
echo count($lecturers);
?>

Ausgang:

3

is_array-Funktion

Die Funktion `is_array` dient dazu, festzustellen, ob eine Variable ein Array ist oder nicht. Betrachten wir nun ein Beispiel, das die Funktion `is_array` implementiert.

<?php
$lecturers = array("Mr. Jones", "Mr. Banda", "Mrs. Smith");
echo is_array($lecturers);
?>

Ausgang:

1

Sortieren

Diese Funktion dient dazu, Arrays nach ihren Werten zu sortieren.

Wenn die Werte alphanumerisch sind, werden sie in alphabetischer Reihenfolge sortiert.

Wenn die Werte numerisch sind, werden sie in aufsteigender Reihenfolge sortiert.

Es entfernt die vorhandenen Zugriffstasten und fügt neue numerische Tasten hinzu.

Die Ausgabe dieser Funktion ist ein numerisches Array.

<?php
$persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female");

sort($persons);

print_r($persons);
?>

Ausgang:

Array ( [0] => Female [1] => Female [2] => Male )

ksort

Mit dieser Funktion wird das Array anhand des Schlüssels sortiert. Das folgende Beispiel veranschaulicht die Verwendung.

<?php
$persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female");

ksort($persons);

print_r($persons);
?>

Ausgang:

Array ( [John] => Male [Mary] => Female [Mirriam] => Female )

Sortiment

Dieser Funktion wird verwendet, um das Array anhand der Werte zu sortieren, während keeping die Tasten. Das folgende Beispiel veranschaulicht ihre Verwendung.

<?php

$persons = array("Mary" => "Female", "John" => "Male", "Mirriam" => "Female");

asort($persons);

print_r($persons);

?>

Ausgang:

Array ( [Mary] => Female [Mirriam] => Female [John] => Male )

Warum Arrays verwenden?

  • Der Inhalt von Arrays kann erweitert werden, um mehr Werte aufzunehmen.
  • Arrays helfen dabei, zusammengehörige Informationen wie Server-Anmeldedaten einfach zu gruppieren.
  • Arrays helfen dabei, saubereren Code zu schreiben.

Häufig gestellte Fragen

Die foreach-Schleife ist die gebräuchlichste Methode. Schreiben Sie foreach ($array as $value), um jeden Wert einzeln zu lesen, oder foreach ($array as $key => $value), um sowohl den Schlüssel als auch den Wert jedes Elements im Array zu lesen.

Die Funktion `sort()` ordnet die Werte neu an und erstellt neue Indizes mit numerischen Schlüsseln, wodurch die ursprünglichen Schlüssel verloren gehen. Die Funktion `asort()` sortiert zwar nach Wert, behält aber die Verbindung jedes Wertes zu seinem ursprünglichen Schlüssel bei, was insbesondere bei assoziativen Arrays wichtig ist.

Verwenden Sie `array_push()` oder `$arr[] = Wert`, um Elemente anzuhängen, und `array_pop()` oder `array_shift()`, um Elemente vom Ende oder Anfang zu entfernen. Um ein bestimmtes Element anhand seines Schlüssels zu löschen, verwenden Sie die Funktion `unset()`.

Ja. Die KI kann die Abrufschleife schreiben, die jede Zeile in ein assoziatives Array abbildet, dessen Schlüssel der Spaltenname ist, und vorschlagen, Abrufmethoden zu verwenden, die assoziative Arrays direkt von Ihrem Datenbanktreiber zurückgeben.

Ja. Fügen Sie die Ausgabe von print_r oder var_dump ein, und die KI kann die Verschachtelung erklären, den genauen Pfad zu einem Wert wie $film['comedy'][0] anzeigen und nicht übereinstimmende Schlüssel oder Ebenen erkennen.

Fassen Sie diesen Beitrag mit folgenden Worten zusammen: