extract Importuje podane zmienne do tablicy symboli &reftitle.description; intextract arrayarray intflagsEXTR_OVERWRITE stringprefix"" Importuje zmienne z tablicy do bieżącej tablicy symboli. Sprawdzany jest każdy element przekazanej tablicy array, żeby zobaczyć czy jest on poprawną nazwą zmiennej. Funkcja sprawdza także kolizje z już istniejącymi zmiennymi w tablicy symboli. Nie używaj extract na niezaufanych danych, jak dane pochodzące od użytkownika (np. w $_GET lub $_FILES). &reftitle.parameters; array Tablica asocjacyjna. Ta funkcja traktuje jej klucze jak nazwy zmiennych i wartości tej tablicy jak wartości zmiennych. Dla każdej pary klucz/wartość stworzona zostanie zmienna w obecnej tablicy symboli, po poddaniu ich pod działanie parametrów flags i prefix. Musisz użyć tablicy asocjacyjnej, tablica indeksowana numerycznie nie zadziała, chyba że użyjesz EXTR_PREFIX_ALL lub EXTR_PREFIX_INVALID. flags Sposób w jaki traktowane są niepoprawne klucze, klucze numeryczne i kolizje jest określony przez flagi. Ten parametr może mieć jedną z następujących wartości: EXTR_OVERWRITE Jeśli istnieje kolizja, nadpisz istniejącą zmienną. EXTR_SKIP Jeśli istnieje kolizja, nie nadpisuj istniejącej zmiennej. EXTR_PREFIX_SAME Jeśli istnieje kolizja, na początek nazwy zmiennej wstaw prefix. EXTR_PREFIX_ALL Na początek każdej nazwy zmiennej wstaw prefix. EXTR_PREFIX_INVALID Tylko w wypadku niepoprawnych/numerycznych nazw zmiennych wstaw na początek wartość argumentu prefix. EXTR_IF_EXISTS Nadpisz zmienną tylko wtedy, gdy już istnieje w bieżącej tablicy symboli. Jest to przydatne do definiowania listy poprawnych zmiennych i ekstrakcji tylko tych zmiennych, które już wcześniej zdefiniowano, na przykład z tablicy $_REQUEST. EXTR_PREFIX_IF_EXISTS Prefiks zostanie dodany tylko do zmiennych których odpowiedniki bez przedrostka już istnieją w bieżącej tablicy symboli. EXTR_REFS Ekstraktuje zmienne jako referencje. Oznacza to, że wartości zaimportowanych zmiennych ciągle odnoszą się do wartości parametru array. Flaga ta może być użyta sama lub w połączaniu z innymi flagami poprzez użycie operacji OR na parametrze flags. Jeśli parametr flags nie został podany, to używana jest opcja EXTR_OVERWRITE. prefix Zauważ, że parametr prefix jest wymagany tylko, jeśli parametr flags to EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID lub EXTR_PREFIX_IF_EXISTS. Jeśli nazwa zmiennej po dodaniu prefiksu nie jest prawidłową nazwą zmiennej, nie jest importowana do tablicy symboli. Prefiksy są automatycznie oddzielane od kluczy tablicy poprzez znak "_". &reftitle.returnvalues; Zwraca liczbę zmiennych pomyślnie zaimportowanych do tablicy symboli. &reftitle.examples; Przykład użycia <function>extract</function> "niebieski", "size" => "średni", "shape" => "kwadrat" ); extract($var_array, EXTR_PREFIX_SAME, "wddx"); echo "$color, $size, $shape, $wddx_size\n"; ?> ]]> &example.outputs; Zmienna $size nie została nadpisana, ponieważ użyliśmy flai EXTR_PREFIX_SAME, co spowodowało utworzenie $wddx_size. Jeśli użylibyśmy EXTR_SKIP, to $wddx_size nie zostałaby stworzona. EXTR_OVERWRITE spowodowałoby że $size miałoby wartość "średni", a EXTR_PREFIX_ALL stworzyłoby nowe zmienne nazwane $wddx_color, $wddx_size i $wddx_shape. &reftitle.notes; Nie używaj extract na niezaufanych danych, jak dane pochodzące od użytkownika (np. $_GET, $_FILES itd). Jeśli już musisz, upewnij się, że używasz jednej z wartości parametru flags, która nie nadpisuje istniejących zmiennych takich jak EXTR_SKIP i miej świadomość że powinieneś ekstrahować w takiej smaej kolejności jaka określona jest w variables_order w &php.ini;. &reftitle.seealso; compact list