Warning: include() [function.include]: URL file-access is disabled in the server configuration in /usr/home/virtwww/w_altcode-ru_ffd5b838/http/php/ssm/php_mathvararr.php on line 23

Warning: include(http://altcode.ru/include/style.php) [function.include]: failed to open stream: no suitable wrapper could be found in /usr/home/virtwww/w_altcode-ru_ffd5b838/http/php/ssm/php_mathvararr.php on line 23

Warning: include() [function.include]: Failed opening 'http://altcode.ru/include/style.php' for inclusion (include_path='.:') in /usr/home/virtwww/w_altcode-ru_ffd5b838/http/php/ssm/php_mathvararr.php on line 23

ALTCODE

Программирование - ALTCODE.ru   Все о языках программирования.

Assembler |  C  |  C++ |  Visual C++ |  C++ Builder |  C# |  Pascal |  Delphi |  BASIC |  Visual Basic |  Visual Basic .NET 
Java |  Perl |  Visual FoxPro |  Ruby |  PHP |  MySQL 
 Главная / PHP / Справочник по PHP (краткий)
Главная
Карта сайта
Наши партнеры
Контакты

<< предыдущая | в начало | следующая >>



Работа с массивами : Переменные и массивы

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

Синтаксис :
list() - языковая конструкция (наподобие array()). Она присваивает перечисленным переменным значения элементов массива, причем первой переменной присваивается первый элемент массива, второй переменной - второй элемент и т.д.

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

Синтаксис :
array compact(mixed varname1 [, mixed $varname2, ...])

Функция compact() упаковывает в массив переменные из текущего контекста (глобального или контекста функции), заданные своими именами в varname1, $varname2 и т.д. При этом в массиве образуются пары с ключами, равными содержимому varnameN, и значениями соответствующих переменных.
Число аргументов может быть неопределенное.
Если в аргументе указано имя несуществующей переменной, он пропускается. Действие этой функции противоположно функции extract().
$a="Test string";
$b="Some text";
$A=compact("a","b");
// теперь $A===array("a"=>"Test string", "b"=>"Some text")
Почему же тогда параметры функции обозначены как mixed? Дело в том, что они могут быть не только строками, но и списками строк. В этом случае функция последнего перебирает все элементы этого списка, и упаковывает те переменные из текущего контекста, имена которых она встретила. Более того - эти списки могут, в свою очередь, также содержать списки строк, и т.д. Правда, последнее используется достаточно редко.
$a="Test";
$b="Text";
$c="CCC";
$d="DDD";
$List=array("b",array("c","d"));
$A=compact("a",$List);
// теперь $A===array("a"=>"Test", "b"=>"Text", 
          "c"=>"CCC", "d"=>"DDD")

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

Синтаксис :
void extract(array arr [, int extract_type] [, string prefix])

Эта функция производит действия, прямо противоположные compact(). А именно, она получает в параметрах массив arr и превращает каждую его пару ключ=>значение в переменную текущего контекста.

Параметр extract_type предписывает, что делать, если в текущем контексте уже существует переменная с таким же именем, как очередной ключ в arr. Он может быть равен одной из констант, перечисленных в следующей таблице:
Поведение функции extract в случае совпадения переменных
EXTR_OVERWRITEПереписывать существующую переменную.
EXTR_SKIPНе перезаписывать переменную, если она уже существует.
EXTR_PREFIX_SAMEВ случае совпадения имен создавать переменную с именем, предваренным префиксом из $prefix.
EXTR_PREFIX_ALLВсегда предварять имена создаваемых переменных префиксом $prefix.

По умолчанию подразумевается EXTR_OVERWRITE, т.е. переменные перезаписываются.
// Сделать все переменные окружения глобальными
extract($HTTP_ENV_VARS);
// То же самое, но с префиксом E_
extract($HTTP_ENV_VARS, EXTR_PREFIX_ALL, "E_");
echo $E_COMSPEC; 
// Выводит переменную окружения COMSPEC
Параметр prefix имеет смысл указать только тогда, когда вы применяете режимы EXTR_PREFIX_SAME или EXTR_PREFIX_ALL.


<< предыдущая | в начало | следующая >>






Warning: include() [function.include]: URL file-access is disabled in the server configuration in /usr/home/virtwww/w_altcode-ru_ffd5b838/http/php/ssm/php_mathvararr.php on line 108

Warning: include(http://altcode.ru/include/banners.php) [function.include]: failed to open stream: no suitable wrapper could be found in /usr/home/virtwww/w_altcode-ru_ffd5b838/http/php/ssm/php_mathvararr.php on line 108

Warning: include() [function.include]: Failed opening 'http://altcode.ru/include/banners.php' for inclusion (include_path='.:') in /usr/home/virtwww/w_altcode-ru_ffd5b838/http/php/ssm/php_mathvararr.php on line 108