Виртуальный Брест
Главная Портал Форум Рассылки Контакт Для клиентов Статьи

Поддержи инвалидов по зрению
Поддержи инвалидов по зрению
 
Реклама на светодиодных экранах
Реклама на светодиодных экранах
 
 

Виртуальный хостинг - дом для вашего сайта - лучшее предложение в Бресте!


Полный список глав книги

Массивы в РНР


Если Вы четко представляете себе, что такое массив, предлагаю Вам сразу перейти к чтению следующего абзаца. Если нет, тогда именно это Вы сейчас и узнаете.

Массив – это ряд переменных, упорядоченных по имени и имеющих различный индекс. Для примера представьте, что у Вас есть двадцать названий, и всех их нужно внести в программу. Можно для удобства обозвать переменные одинаковым именем и ставить в конце каждого имени переменной число в соответствии с номером названия. У Вас получится простейший одномерный массив.

Только любой язык программирования (и РНР тоже!) предоставляет набор средств для более детальной и удобной работы с таким набором – массивом. И число (так называемый индекс), в этом случае нужно заключать в квадратные скобки.

Допустим, есть ряд строковых переменных – «компьютер», «Интернет», «модем», «монитор». Имя для массива выберем $m, хотя доступно любое, как и у обычной переменной. Индекс в массивах начинается не с единицы, а с нуля, и таким образом для внесения наших слов в массив надо сделать так:

$m[0] = “компьютер”;
$m[1] = “Интернет”;
$m[2] = “модем”;
$m[3] = “монитор”;

Или так, что почти то же самое.

$m[] = “компьютер”;
$m[] = “Интернет”;
$m[] = “модем”;
$m[] = “монитор”;

За исключением того факта, что в первом случае мы явно указываем необходимый нам индекс, а во втором – он вычисляется автоматически и принимает значение наибольшего использованного в массиве и соответственно, свободного. Это может показаться бесполезным, но иногда просто необходимо для разного рода трюков в программировании, а пока просто примите как это как факт и используйте любой способ.

Вот теперь у нас создан массив с именем $m и максимальным индексом (это количество элементов в массиве) – 4. Именно 4, хотя последний заполненный элемент – 3. Если мы попробуем считать элемент с 4-ым индексом, результат будет равен пустой строке, так как там просто ничего нет. Обращаться к элементам массива нужно по имени массива и его индексу, что и составляет основное удобство. Например, мы можем вывести на экран все элементы массива:

$i = 0; 
while ($i < count($m)) 
{ 
echo $m[$i].”<br>”; 
$i++; 
}

Функция count($m) выдает нам число, соответствующее максимальному индексу массива. В нашем примере это будет число 3. Таким образом, у нас всегда есть возможность знать, сколько элементов присутствует в данном массиве.

Что еще можно узнать о массивах в РНР? Кое-что можно. Например, функция current возвращает текущий элемент массива. Каждая переменная-массив имеет внутренний указатель (это не индекс, а специальный параметр который, как правило, либо совпадает с используемым в данный момент индексом, либо превышает его на единицу, но необязательно), который указывает на один из своих элементов. Кроме того, все элементы в массиве связываются двунаправленным списком указателей для дополнительных целей. Внутренний указатель указывает на первый элемент, который включался в массив, пока Вы не выполняли одну из функций, которые модифицируют этот указатель в этом массиве. Функция current() просто возвращает элемент массива, на который в данный момент указывает внутренний указатель. Она никак не перемещает указатель. Если внутренний указатель указывает на конец списка элементов, current() возвращает false (ложно).

Внимание: если массив содержит пустые элементы (0 или "", пустую строку), то функция возвратит "false" для каждого из них. Это показывает, что текущий элемент является нулевым значением или вы дошли до конца массива. Операторы End - устанавливают внутренний указатель массива на последнем элементе, Next - передвигает внутренний указатель массива в сторону увеличения и возвращает следующий элемент массива, от текущей позиции внутреннего указателя массива, или "ложь"(false) если нет больше элементов. Если массив содержит пустые элементы, тогда эта функция возвратит "ложь" (false) и для этих элементов. next() ведет себя подобно current(), с одной лишь разницей. Он передвигает внутренний указатель массива на один элемент вперед прежде, чем возвратить элемент. Это означает, что он возвращает значение следующего элемента и передвигает на него внутренний указатель массива. Если при обращении к следующему элементу обнаружен конец массива - next() возвращает "ложь" (false).

Prev - перемещает внутренний указатель массива в сторону уменьшения индекса (грубо говоря – назад). Возвращает предыдущий элемент массива, или "ложь" (false), если перед текущим нет больше элементов. Если массив содержит пустые элементы, то функция возвратит "ложь" и на этих элементах. prev() ведет себя подобно next(), за исключением того, что он переводит внутренний указатель массива на одну позицию назад, а не вперед.

Reset () - устанавливает внутренний указатель массива на первом элементе.

Rsort () - сортирует массив в обратном порядке (по убыванию). По алфавиту в том числе. К сожалению, русский алфавит тут не при чем, но конечно, существует большое количество уже разработанных скриптов, выполняющих такую сортировку, и найти их в Интернет совсем не сложно при желании.

Sort () - сортирует массив. Точно то же, что и предыдущее, только по возрастанию.

Конечно, это далеко не все функции, которые есть в РНР относительно массивов. Но остальное - часто очень специфично и решается иногда более простыми методами. А уже этих волне достаточно для полноценной работы и для написания своих собственных программ.

Читать еще...



Чои Вин

Как спроектировать современный сайт
Проектирование интернет-сайтов на базе сеток - бесценный инструмент для организации веб-страниц и создания привлекательных веб-интерфейсов, помогающий разрабатывать по-настоящему...

Е. Сорокина, Ю. Федотченко, К. Чабаненко

В социальных сетях. Twitter - 140 символов самовыражения
Количество пользователей Твиттера давно превысило цифру 150 миллионов. Российских твиттерян уже больше 500 тысяч и прирост осуществляется совершенно немыслимыми темпами - за...

Дэвид Макфарланд

JavaScript. Подробное руководство
JavaScript - это основной инструмент веб-разработчиков, позволяющий делать интернет-страницы интерактивными. Перед вами - наиболее полное и качественно структурированное...

С. Малик

Microsoft SharePoint 2010 для профессионалов
Описаны все возможности платформы для разработки сайтов и корпоративных порталов SharePoint 2010 компании Microsoft. Основной акцент сделан на новых функциях и возможностях....

    Информация

Главная - переход на начало
Тарифы на Российский хостинг
Правила - что можно а что нет
Заказ - сделайте это сейчас
Выбор домена - найди свое имя
Регистрация домена - купить
Оплата - варианты для всех
Панель управления Россия
Панель управления Беларусь
Вопросы и ответы - информация
Разработка сайтов - сопровождение
Виртуальный Брест - портал
Контакт - обратная связь
Наш форум - пообщаемся?

Список доменов
в которых доступна бесплатная регистрация имен при покупке хостинга, а так же открытие поч- тового ящика:

Новости Бреста:

Второй порыв теплосетей в Бресте - двенадцать многоэтажных домов и один детский сад остались без тепла
Почти тонну мёда задержали налоговики при проверке в Бресте
Зарплата в конвертах в Бресте - видео
Трое жителей Кавказа в "поисках работы" забрались прямо в лес в пограничную зону
Профилактика квартирных краж - важно
Современный животноводческий комплекс на 1500 голов строится в СПК "Королевский" Кобринского района - фото
Результаты проходящей на территории Брестской области акции "Не упусти свой шанс"
Осенний месячник по наведению порядка на земле проходит на Брестчине - важно
В Лунинецком районе в водоеме нашли автомобиль с телом внутри
ГАИ: брестчанин решил стать маршрутчиком и в пьяном состоянии вез горожан

© Виртуальный Брест 2001 - 2009 Автор проекта: Андрей Кухарчик Дизайн: Partgraphic