Автор: admin  

Главная Массивы Переменные и массивы

list

Заносит элементы массива в переменные.

Синтаксис:

Наподобие array(), функция list() не совсем функция, а языковая конструкция. Она используется для формирования списка переменных.

Пример использования функции list(): Индексы

Функция поддерживается PHP 3, PHP 4, PHP 5

Упаковывает в массив переменные из текущего контекста.

Функция compact() упаковывает в массив переменные из текущего контекста (глобального или контекста функции), заданные своими именами в varname1, $varname2 и т.д. При этом в массиве образуются пары с ключами, равными содержимому varnameN,

Почему же тогда параметры функции обозначены как mixed? Дело в том, что они могут быть не только строками, но и списками строк. В этом случае функция последнего перебирает все элементы этого списка, и упаковывает те переменные из текущего контекста, имена которых она встретила. Более того - эти списки могут, в свою очередь, также содержать списки строк, и т.д. Правда, последнее используется достаточно редко.

Пример использования функции compact():

Функция поддерживается PHP 4, PHP 5

extract

Импорт элементов массива в переменные.

Синтаксис:

Функция extract() используется для импортирования значений массива в строку. Эта функция берет ассоциативный массив var_array, использую ключ элемента как имя переменной, а значение элемента как значение полученной переменной. Для создания переменных из пары ключ =>

значение можно также использовать необязательные параметры extract_type и prefix.

Замечание: начиная с PHP версии 4.0.5 эта функция возвращала количество извлеченных переменных.

Функция extract() проверяет, действительно ли каждый ключ массива может быть названием переменной. Она также проверяет на наличие одинаковых названий получаемых переменных. В случае, если обнаруживаются недействительные или числовые ключи, поведение функции предопределяет параметр extract_type, который может принимать следующие значения:

EXTR_OVERWRITE

Если переменная с таким именем уже существует, то ее значение будет заменено (значение по умолчанию).

EXTR_SKIP

Если переменная с таким именем уже существует, то ее значение не будет заменено.

EXTR_PREFIX_SAME

Если переменная с таким именем уже существует, то к ее имени добавится префикс, определенный в параметре prefix.

EXTR_PREFIX_ALL

Ко всем образуемым переменным будет добавлен префикс prefix.

EXTR_PREFIX_INVALID

Только при неправильных или числовых индексах массива к имени переменной будет добавлен префикс prefix.

EXTR_IF_EXISTS

Если переменная с таким именем уже существует, то ее значение будет переписано. Иначе ничего не сделает. Это может быть полезно, если вы задали список всех переменных, а затем хотите извлечь только те переменные, которые были определены, например, из $_REQUEST. Этот флаг был добавлен в PHP 4.2.0

EXTR_PREFIX_IF_EXISTS

Создает переменные с префиксом, если такие переменные без префикса уже существовали. В любом другом случае ничего не создает. Этот флаг был добавлен в PHP 4.2.0

EXTR_REFS

Переменные создаются как ссылки. Это означает, что созданные переменные все еще ссылаются на значения соответствующих элементов массива var_array. Вы можете применять этот флаг как в одиночку, так и совместно с другими флагами. Этот флаг был добавлен в PHP 4.3.0

Пример использования функции extract():

Пример выведет:

Здесь переменная $size не была переписана, т.к. мы указали параметр EXTR_PREFIX_SAME.

Если указать EXTR_SKIP, тогда переменная $wddx_size даже не была бы создана. Если указать EXTR_OVERWRITE, то переменная $size имела бы значение "medium".

Если EXTR_PREFIX_ALL - то в результате были бы созданы переменные $wddx_color, $wddx_size, и $wddx_shape.

Лучше всего использовать ассоциативные массивы. Массивы с цифровыми ключами не могут быть использованы в этой функции, если установлены флаги EXTR_PREFIX_ALL или EXTR_PREFIX_INVALID.

Функция поддерживается PHP 3 >= 3.0.7, PHP 4, PHP 5



 

 
 
Какой поисковик лучше?


   
 

 
Популярные новости