Рекомендуемый курс:

PHP функция extract()

Пример

<?php
$a = "Original";
Назначить значения "Cat", "Dog" и "Horse" переменным $a, $b и $c:
$my_array = array("a" => "Cat","b" => "Dog", "c" => "Horse");;
extract($my_array)
?>

Запуск примера

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

Определение и использование

Функция extract() импортирует переменные из массива в текущую таблицу символов.

Эта функция использует имена ключей массива в качестве имен переменных и значения ключей массива в качестве значений переменных. Для каждого элемента массива в текущей таблице символов создается переменная. второй параметр тип

Используется для указания того, как функция extract() должна обрабатывать конфликты, когда переменная уже существует, а в массиве又有 элемент с тем же именем.

Эта функция возвращает количество успешно импортированных в таблицу символов переменных.

СинтаксисОписаниеextract(extract_rulesextract(префикс,
) Параметр
Описание массив
extract_rules

Обязателен. Определяет массив, который нужно использовать.

Возможные значения:

  • EXTR_OVERWRITE - По умолчанию. Если есть конфликты, перекрывает уже существующие переменные
  • EXTR_SKIP - Если есть конфликты, не перекрывает уже существующие переменные
  • EXTR_PREFIX_SAME - Если есть конфликты, добавляет префикс к именам переменных префикс.
  • EXTR_PREFIX_ALL - Добавляет префикс ко всем именам переменных префикс.
  • EXTR_PREFIX_INVALID - Добавляет префикс только перед несовершенными или числовыми именами переменных префикс.
  • EXTR_IF_EXISTS - Заменяет значения переменных, если в текущей таблице символов уже существует同名ная переменная, других не обрабатывает.
  • EXTR_PREFIX_IF_EXISTS - Создает переменную с префиксом, если в текущей таблице символов уже существует同名ная переменная, других не обрабатывает.
  • EXTR_REFS - Извлекает переменные как ссылки. Введенные переменные по-прежнемуreferencen к значению массивного параметра.
префикс

Доступно. Пожалуйста, обратите внимание префикс только extract_type требуется, когда значение является EXTR_PREFIX_SAME, EXTR_PREFIX_ALL, EXTR_PREFIX_INVALID или EXTR_PREFIX_IF_EXISTS. Если результат добавления префикса не является законным именем переменной, он не будет импортирован в символическую таблицу.

Автоматически добавляется подчеркивание между префиксом и именем ключа массива.

Технические детали

Возврат значения: Возвращает количество успешно импортированных в символическую таблицу переменных.
Версия PHP: 4+
Журнал обновлений:

extract_rules значение EXTR_REFS было добавлено в PHP 4.3.

extract_rules значения EXTR_IF_EXISTS и EXTR_PREFIX_IF_EXISTS были добавлены в PHP 4.2.

с PHP 4.0.5, функция возвращает количество успешно импортированных в символическую таблицу переменных.

extract_rules значения EXTR_PREFIX_INVALID были добавлены в PHP 4.0.5.

с PHP 4.0.5extract_rules значения EXTR_PREFIX_ALL также включают числовые переменные.

Более примеров

Пример 1

Использование всех параметров:

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

Запуск примера