PHP extract()Funktionen

PHP Array ReferenceVollständige PHP-Array-Referenz

Beispiele

Weisen Sie den Variablen $a, $b und $c die Werte "Cat", "Dog" und "Horse" zu:

<?php $a = "Original"; $my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse"); extract($my_array); echo "\$a = $a; \$b = $b; \$c = $c"; ?>

Beispiel ausführen »

Definition und Verwendung

Die extract()-Funktion importiert Variablen aus einem Array in die aktuelle Symboltabelle.

Diese Funktion verwendet Array-Schlüsselnamen als Variablennamen und Array-Schlüsselwerte als Variablenwerte. Für jedes Element im Array wird eine entsprechende Variable in der aktuellen Symboltabelle erstellt.

Diese Funktion gibt die Anzahl der erfolgreich gesetzten Variablen zurück.


Syntax

extract(array,extract_rules,prefix)

Parameters Beschreibung
array Erforderlich. Gibt das zu verwendende Array an.
extract_rules Optional. Die Funktion extract() prüft, ob jeder Schlüsselname ein gültiger Variablenname ist und ob er mit vorhandenen Variablennamen in der Symboltabelle in Konflikt steht. Der Umgang mit ungültigen und in Konflikt stehenden Schlüsselnamen wird durch diesen Parameter bestimmt.

Mögliche Werte:

  • EXTR_OVERWRITE - Standard. Überschreibt vorhandene Variablen, wenn ein Konflikt besteht.
  • EXTR_SKIP - Überschreibt vorhandene Variablen nicht, wenn ein Konflikt besteht.
  • EXTR_PREFIX_SAME - Wenn ein Konflikt besteht, wird das Präfix dem Variablennamen vorangestellt.
  • EXTR_PREFIX_ALL - Stellt allen Variablennamen das Präfix voran.
  • EXTR_PREFIX_INVALID - Stellt das Präfix nur ungültigen oder numerischen Variablennamen voran.
  • EXTR_IF_EXISTS - Überschreibt nur die Werte von Variablen, die bereits in der aktuellen Symboltabelle vorhanden sind. Alle anderen werden ignoriert.
  • EXTR_PREFIX_IF_EXISTS - Erstellt nur dann mit Präfix versehene Variablennamen, wenn eine Variable mit demselben Namen bereits in der aktuellen Symboltabelle vorhanden ist. Alle anderen werden ignoriert.
  • EXTR_REFS - Extrahiert Variablen als Referenzen. Die importierten Variablen referenzieren weiterhin die Werte des Array-Parameters.
Präfix Optional. Wenn der Wert des Parameters extract_rules EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID oder EXTR_PREFIX_IF_EXISTS ist, dann ist prefix erforderlich.

Dieser Parameter gibt das Präfix an. Zwischen dem Präfix und dem Schlüsselnamen des Arrays wird automatisch ein Unterstrich eingefügt.

Technische Details

Rückgabewert: Gibt die Anzahl der erfolgreich gesetzten Variablen zurück.
PHP-Version: 4+
Änderungsprotokoll: extract_rulesDer Wert EXTR_REFS wurde in PHP 4.3 hinzugefügt.

extract_rulesDie Werte EXTR_IF_EXISTS und EXTR_PREFIX_IF_EXISTS wurden in PHP 4.2 hinzugefügt.

Seit PHP 4.0.5 gibt diese Funktion die Anzahl der erfolgreich gesetzten Variablen zurück.

extract_rulesDer Wert EXTR_PREFIX_INVALID wurde in PHP 4.0.5 hinzugefügt.

Seit PHP 4.0.5,extract_rulesDer Wert EXTR_PREFIX_ALL umfasst auch numerische Variablen.


Weitere Beispiele

Beispiel 1

Alle Parameter verwenden:

<?php
$a = "Original";
$my_array = array("a" => "Cat", "b" => "Dog", "c" => "Horse");

extract($my_array, EXTR_PREFIX_SAME, "dup");

echo "$a = $a; $b = $b; $c = $c; $dup_a = $dup_a";
?>

Beispiel ausführen »


PHP Array ReferenceVollständige PHP-Array-Referenz Andere Erweiterungen