|
Когда-нибудь в будущем команда разработчиков PHP возможно пожелает добавить еще одну константу или ключевое слово, либо вы можете ввести в ваше приложение еще одну константу и тогда у вас могут возникнуть проблемы. Например, вы уже не можете использовать таким образом слова empty и default, поскольку они являются зарезервированными ключевыми словами.
Замечание: Повторим, внутри строки (string), заключенной в двойные кавычки правильным является не окружать индексы массива кавычками, поэтому "$foo[bar]" является верным. Более подробно почему - смотрите вышеприведенные примеры, а также раздел обработка переменных в строках.
Преобразование в массив
Для любого из типов: integer, float, string, boolean и resource, если вы преобразуете значение в массив, вы получите массив с одним элементом (с индексом 0), являющимся скалярным значением, с которого вы начали.
Если вы преобразуете в массив объект (object), вы получите в качестве элементов массива свойства (переменные-члены) этого объекта. Ключами будут имена переменных-членов.
Если вы преобразуете в массив значение NULL, вы получите пустой массив.
Сравнение
Массивы можно сравнивать при помощи функции array_diff() и Операторов массивов.
Примеры
Тип массив в PHP является очень гибким, поэтому мы приведем здесь несколько примеров, чтобы продемонстрировать вам все возможности массивов.
<?php // это $a = array('color' => 'red', 'taste' => 'sweet', 'shape' => 'round', 'name' => 'apple', 4 // ключом будет 0); // полностью соответствует $a['color'] = 'red'; $a['taste'] = 'sweet'; $a['shape'] = 'round'; $a['name'] = 'apple'; $a[] = 4; // ключом будет 0 $b[] = 'a'; $b[] = 'b'; $b[] = 'c'; // создаст массив array(0 => 'a', 1 => 'b', 2 => 'c'), // или просто array('a', 'b', 'c')?> | ||
Пример 11-4. Использование array()
| ||
Пример 11-5. Коллекция
Результат работы приведенного скрипта будет следующий:
|
Обратите внимание, что в настоящее время невозможно изменять значения массива в таком цикле напрямую. Однако можно сделать так:
Пример 11-6. Коллекция
Результат работы приведенного скрипта будет следующий:
|
Следующий пример создает начинающийся с единицы массив.
Пример 11-7. Индекс, начинающийся с единицы
Результат работы приведенного скрипта будет следующий:
|
Пример 11-8. Заполнение массива
|
Массивы упорядочены. Вы можете изменять порядок элементов, используя различные функции сортировки. Для дополнительной информации смотрите раздел функции для работы с массивами. Вы можете подсчитать количество элементов в массиве, используя функцию count().
Пример 11-9. Сортировка массива
|
Поскольку значение массива может быть чем угодно, им также может быть другой массив. Таким образом вы можете создавать рекурсивные и многомерные массивы.
Пример 11-10. Рекурсивные и многомерные массивы
|
Обратите внимание, что при присваивании массива всегда происходит копирование значения. Чтобы копировать массив по ссылке, вам нужно использовать оператор ссылки.
<?php $arr1 = array(2, 3); $arr2 = $arr1; $arr2[] = 4; // $arr2 изменился, // $arr1 по прежнему array(2,3) $arr3 = &$arr1; $arr3[] = 4; // теперь $arr1 и $arr3 эквивалентны?> |
Дата добавления: 2015-10-30; просмотров: 52 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Почему $foo[bar] это неверно? | | | Государство как инструмент: 1648–1789 гг. |