Aanbevolen cursus:

PHP extract() functie

voorbeeld

<?php
$a = "Original";
De sleutelwaarden "Cat", "Dog" en "Horse" toekennen aan de variabelen $a, $b en $c:
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");;
extract($my_array)
?>

Uitvoervoorbeeld

echo "\$a = $a; \$b = $b; \$c = $c";

definitie en gebruik

De functie extract() importeert variabelen van het array naar de huidige symbolentabel.

Deze functie gebruikt de array-sleutelnamen als variabelen en de array-waarden als variabelewaarden. Voor elk element in het array wordt een variabele in de huidige symbolentabel gecreëerd. tweede parameter type

Gebruik om te specificeren hoe de functie extract() omgaat met conflicten wanneer een variabele al bestaat en er een element met dezelfde naam in het array is.

Deze functie retourneert het aantal succesvol geïmporteerde variabelen naar de symbolentabel.

syntaxisbeschrijvingextract(extract_rulesextract(prefix,
) parameter
beschrijving array
extract_rules

Verplicht. Bepaal het te gebruiken array.

Mogelijke waarden:

  • EXTR_OVERWRITE - Standaard. Overschrijf bestaande variabelen bij conflict
  • EXTR_SKIP - Behandel geen conflicten door bestaande variabelen niet te overschrijven
  • EXTR_PREFIX_SAME - Voeg een voorvoegsel toe aan variabelennamen als er een conflict is prefix.
  • EXTR_PREFIX_ALL - Voeg een voorvoegsel toe aan alle variabelennamen prefix.
  • EXTR_PREFIX_INVALID - Voeg alleen een voorvoegsel toe aan ongeldige of numerieke variabelennamen prefix.
  • EXTR_IF_EXISTS - Overschrijf alleen de waarden van variabelen die al in de huidige symbolentabel bestaan, behandel de rest niet.
  • EXTR_PREFIX_IF_EXISTS - Maak alleen een variabelenaam met voorvoegsel als er al een variabele met dezelfde naam in de huidige symbolentabel bestaat, behandel de rest niet.
  • EXTR_REFS - Trek variabelen als referenties op. De geïmporteerde variabelen blijven verwijzen naar de waarde van het arrayparameter.
prefix

optioneel. Let op prefix alleen extract_type nodig wanneer de waarde EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID of EXTR_PREFIX_IF_EXISTS is. Als het resultaat van het toevoegen van een prefix geen geldige variabelenaam oplevert, wordt het niet ingevoegd in de symbolische tabel.

Een onderstrepingsteken wordt automatisch toegevoegd tussen de prefix en de arraytoegangssleutel.

Technische details

Retourneringswaarde: Retourneert het aantal variabelen dat succesvol is ingevoegd in de symbolische tabel.
PHP versie: 4+
Update log:

extract_rules waarden EXTR_REFS zijn toegevoegd in PHP 4.3.

extract_rules waarden EXTR_IF_EXISTS en EXTR_PREFIX_IF_EXISTS zijn toegevoegd in PHP 4.2.

vanaf PHP 4.0.5, retourneert deze functie het aantal variabelen dat succesvol is ingevoegd in de symbolische tabel.

extract_rules waarden EXTR_PREFIX_INVALID zijn toegevoegd in PHP 4.0.5.

vanaf PHP 4.0.5extract_rules waarden EXTR_PREFIX_ALL bevatten ook numerieke variabelen.

Meer voorbeelden

Voorbeeld 1

Gebruik alle parameters:

<?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";
?>

Uitvoervoorbeeld