Оператор list()
Основные операции с массивом
Добавить элемент в массив или изменить значение элемента в массиве можно с помощью оператора:
$ имя-массива [ ключ ] = значение;
Так, добавление элемента 32 с ключом "c" в массив $array1 выполняется следующим образом:
$array1["c"] = 32;
Если ключ не задан, элемент добавляется в конец массива.
Если при выполнении операции добавления без задания значения ключа массив с именем имя-массива не существует, то он создается с единственным элементом и значением ключа, равным 0.
Удаление элемента массива выполняется с помощью оператора
unset($ имя-массива [ ключ ]);
Если в операторе unset() указано только имя массива, удаляется весь массив.
Функция
count($ имя-массива)
возвращает количество элементов в массиве.
Пример 4.6.21. Операции с массивами:
1. Добавление элемента 32 с ключом "c" в массив $array1 в примере 4.6.16 выполняется следующим образом:
$array1["c"] = 32;
2. Предложение
$array1[] = 17;
добавит в конец массив $array1 в примере 4.6.16 элемент с ключом 3 и значением, равным 17.
|
|
3. Предложение
$array1_1[] = "Иванов";
создаст массив $array1_1 с одним элементом с ключом 0 и значением, равным "Иванов".
4. Предложение
unset($array2["base"]);
удаляет из созданного в примере 4.6.17(1) массива $array2 элемент с ключом "base".
5. Предложение
unset($array1);
удаляет созданный в примере 4.6.16 массива $array1.
6. Предложение
$n3 = count($array3)
для созданного в примере 4.6.17(2) массива $array3 присваивает переменной $n3 значение 3.
Оператор
list(значение1, значение2, …)
позволяет присвоить значениям переменных, заданным в параметрах значения элементов массива. Оператор list() можно использовать только для массивов, все ключи которых являются числами и у которых значение ключа для первого элемента равно 0.
Пример 4.6.22. Использование оператора list():
Если для созданного в примере 4.6.17(2) массива $array3 записать следующее предложение:
list($str_1, $str_2, $str_3) = $array3;
то переменная $str_1 примет значение "String 1", переменная $str_2 – значение "String 2" и переменная $str_3 – значение "String 3".
Другие функции работы с массивами будут рассмотрены при обзоре стандартных функций PHP.
В PHP определено большое количество предопределенных переменных, т.е. переменных, значения которых определяет не пользователь, а интерпретатор PHP.
Основными предопределенными переменными PHP являются:
· $_SERVER – массив, содержащий информацию о сервере и содержимое заголовков HTTP (например, $_SERVER['SERVER_PROTOCOL'] содержит используемую на сервере версию протокола HTTP, $_SERVER['REQUEST_METHOD'] содержит использованный метод запроса – GET, POST или другой, $_SERVER['QUERY_STRING'] содержит данные, пересылаемые серверу с использованием метода GET и т.д.);
|
|
· $_GET – массив, содержащий переменные, переданные на сервер с помощью метода get (например, $_GET['name'] содержит значение параметра с именем name);
· $_POST – массив, содержащий переменные, переданные на сервер с помощью метода post (например, $_GET['password'] содержит значение параметра с именем password);
· $_FILES – массив, содержащий файлы, переданные на сервер с помощью метода POST (например, $_FILES['myfile.txt'] содержит файл с именем 'myfile.txt');
· $_COOKIE – массив, содержащий модули настройки (cookies), переданные на Web-сервер;
· $_REQUEST – массив, содержащий, переданные на Web-сервер с помощью методов get и post, а также модули настройки (cookies), переданные на Web-сервер;
· $_SESSION – массив, содержащий переменные, зарегистрированные в сеансе для данного сценария;
· $_ENV – массив, содержащий переменные окружения, которые доступны сценарию;
· $php_errormsg – переменная, содержащая текст последнего сообщения, сгенерированного PHP.
Кроме этого, в PHP определена предопределенная переменная – массив $GLOBALS, в котором содержатся переменные сценария (эта переменная будет рассмотрена далее, при описании пользовательских функций PHP).
Все предопределенные переменные, за исключением $php_errormsg, доступны в любом месте сценария PHP (переменная $php_errormsg доступна только в том блоке, где произошла ошибка).