ТОП-10 популярных



Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...

НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...

БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...

Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...

ПОД ЛИТЕРОЙ «N»
Aтаку LCD-мониторов не остановить, а масштабы этого наступления даже немного пугают. Судите сами — многие пользователи только начинают приглядываться к новому для...


Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...

Размер объему не помеха.
С тех пор как компания Fujitsu отказалась от производства жестких дисков для настольных компьютеров, многие пользователи начали забывать о том,...


Какую только информацию мы не помещаем на компакт-диски: резервные копии важных данных, музыку, фильмы... Многие полагают, что главное - «купить...

PHP. Массивы


28-12-2009

Массивы хранят значения в списках. Ссылка к элементам массива задается с помощью индекса, который чаще всего является целым числом, но может быть также и строкой. Значение элемента может быть текстом, числом или даже другим массивом. Создание массива, содержащего массивы, позволяет создавать многомерные массивы. Массивы широко применяются встроенными функциями PHP, и программирование без них в большинстве случаев невозможно. Существует много функций, непосредственно разработанных для манипулирования массивами. Им уделено особое внимание в главе 11, "Данные".

5.1. Одномерные массивы
Для обращения к элементу массива используются квадратные скобки, внутри которых указывается индекс элемента (листинг 5.1). Эта конструкция обрабатывается подобно переменным, и ей можно присваивать значение или передавать значение функции. Объявление массива до момента его использования не требуется. Аналогично переменным, любой элемент массива создается на лету. При обращении к несуществующему элементу массива в зависимости от контекста ему будет присвоено нулевое значение или пустая строка.
| Листинг 5.1. Ссылка на элементы массива
<?php
$Cities[0] = "Сан-Франциско"; $Cities[1] = "Лос-Анджелес"; $Cities[2] = "Нью-Йорк"; $Cities[3] = "Мартинес"; print("H живу в $Cities[3].<br>n");
?>

 Одномерными массивами можно считать список значений с одним и тем же именем. Но неужели не проще создать переменные наподобие $Cities1, $Cities2, $Cities3 и не беспокоиться о каких-то квадратных скобках? Одной из причин является простота просмотра элементов массива в цикле. Зная, что все элементы массива добавлялись с помощью последовательных чисел, для получения каждого элемента массива достаточно цикла for. PHP упрощает процедуру создания таких массивов. Если номера элемента не заданы, присвоение значений элементам процессор PHP начнет с 0, а затем использует последующие целые числа. Запустив программу из листинга 5.2, вы сможете убедиться, что четырем городам будут присвоены индексы 0, 1, 2 и 3 соответственно. 
 Листинг 5.2. Добавление в массив

<?php 

1" •
$Cities[] = " Сан- Франциско" $Cities[] = " Лос- Анджелес";
$Cities[] = " Нью- Йорк";
$Cities[] = "Мартинес"; // счетчик элементов $indexLimit = count($Cities); // вывод каждого элемента
for($index=0; $index < $indexLimit; $index++) {
print("Город $index - $Cities[$index]. <br>n");
}

5.2. Индексирование массивов
До этого момента мы рассматривали только массивы, имеющие целочисленные индексы, но в качестве индексов допустимо также использовать строки. Иногда такие массивы называют ассоциативными массивами или хеш. Они могут понадобиться в ситуациях, когда в одном массиве хранятся данные различного типа. Например, можно создать массив, в котором нулевым элементом является имя, первым элементом - адрес, вторым - род занятий. В листинге 5.3 предоставляется более элегантный способ сделать это.
Листинг 5.3. Индексирование массивов строками
<?php
// введите определенную информацию $UserInfo["Name"] = " Леон Аткинсон"; $UserInfo["Location"] = "Мартинес, Калифорния"; $UserInfo["Occupation"] = "Программист"; // цикл по значениям foreach($UserInfo as $key=>$value)
{
print("$key - $value.<br>n");

Так как этот массив не был проиндексирован целочисленными индексами, выборка элементов массива начиная с нулевого невозможна. Но если заглянуть немного вперед, в главу 11, "Данные", то можно найти такие специальные функции, как reset, next и current . Эти функции предлагают один из способов просмотра массивов такого типа, который является лучшим способом, если требуется нечто большее, чем простой просмотр элементов массива по порядку. Поэтому можно использовать все функции, но специально для последовательного просмотра массива в PHP 4 была добавлена функция foreach (см. главу 3, "Операторы управления"). Она аналогична оператору цикла for, но предназначена для выборки элементов массива.

Понравился материал? Поделитесь с друзьями!



<< Предыдущая статьяСледующая статья >>
PHP. Функции. Часть Пятая. PHP. Массивы. Часть Вторая.