Добрый день дорогой читатель Блога RS! Сегодня мы продолжим говорить о php, а если быть точнее, мы поговорим о циклах do while и for. Для чего они нужны? Совершенно на любом интернет проекте Вы можете встретить список новостей, или список каких-нить фотографий, ссылок, анонсов. Как делаются такие списки? Есть два варианта. Первый - если мы делаем статичный сайт, то бишь на языке разметки html, то мы берем кусочек кода, отвечающий за один анонс на нашем сайте, и копируем его, копируем и еще раз копируем! Что согласитесь со мной, не особо то и удобно. Второй вариант - создавать динамичный сайт на php с использованием цикла, который за Вас будет копировать нужный Вам код столько раз, сколько потребуется. При этом получится так: Вы написали этот код, и забыли про него. Циклы использует не только для реализации всяческих списков на сайте. Циклы можно использовать для наполнения переменных данными, для изменения данных в переменных. Проще говоря, если Вам необходимо проделывать одну и тужу операцию помногу раз, то циклы незаменимы!
Ну теоретически я думаю убедил Вас, что циклы штука удобная, давайте теперь покажу их на практике!
Забавный получился заголовок Ну все довольно просто! Программист, то есть Вы, составляет условие, и пока оно выполняется цикл будет циклиться Например, Вам необходимо выполнять какой то кусок кода лишь 10 раз. Не проблема! Создадим переменную которая будет считать сколько циклов пройдено, и как только эта переменная станет равна 10, прекратим цикл, вот и все Давайте рассмотрим сначала цикл do while после цикл for, а в конце сравним их
Синтаксис цикла такой:
<?php
do
{
Выполняемая операция
}
while(Условие);
?>
Теперь для укрепления, поставим для себя задачу. Предположим, нам просто жизненно необходимо, вывести 3 числа по порядку. Мы могли бы сделать вот так:
<?php
$a = 1;
$b = 2;
$c = 3;
echo $a." ".$b." ".$c;
?>
Получили бы нужный нам результат:
А теперь у нас появилась надобность вывести 100 чисел. Согласитесь что создавать 100 переменных как то чересчур, поэтому используем цикл:
<?php
$a = 0;
do
{
$a = $a + 1;
echo $a." ";
}
while($a<100);
?>
Смотрим, что я сделал:
Вот что получилось:
Этот тоже имеет особую популярность в обществе веб программистов. Смысл тот же самый, но для начала я приведу синтаксис:
for(Объявляем переменную которая будет следить за количеством пройденных циклов;Условие выполнения цикла;Увеличение переменной которая отслеживает количество пройденных циклов)
{
Выполняемая операция
}
Описание конечно немного длинноватое, но сама запись довольно короткая Для закрепления и пояснения выполним туже задачу что и с предыдущим циклом, выведем 100 чисел:
<?php
for($i=1;$i<=100;$i++)
{
echo $i." ";
}
?>
Вот результат:
Разница между этими двумя циклами не большая. Пожалуй лишь одна разница Условие у цикла do while стоит в конце записи, а у цикла for в начале. Трудно объяснить, я продемонстрирую, давайте у цикла do while цифру 100 заменим на цифру 0, тем самым сделаем условие не выполнимым, ведь переменная $a которая с самого начала содержит число ноль не может быть меньше нуля:
<?php
$a = 0;
do
{
$a = $a + 1;
echo $a." ";
}
while($a<0);
?>
Мы увидим следующее:
Почему так получилось? Почему мы видим на экране "1"? Ведь условие то не выполнимо! Ответ прост - в цикле do while первый шаг будет произведен в независимости от условия. А вот последующие шаги буду выполняться лишь в том случае, если условие правдиво.
Теперь заменим цифру 100 на 0 у цикла for для той же цели, сделать условие не выполнимым:
<?php
for($i=1;$i<=0;$i++)
{
echo $i." ";
}
?>
Вот что мы увидим:
Цикл for сначала проверил условие, а уже потом выполняет какие либо действия. В данном случае он ничего не выполнил...
Вот пожалуй и все отличия
Сегодня мы разобрали самые популярные циклы в php программирование. Для первого времени мне было достаточно знать, что такое переменные, один цикл - do while, и вывод записей из базы данных, для того, что бы написать свой первый простейший динамический сайтик! Так что совсем скоро и Вы уже сможете самостоятельно написать свой простенький проект. Но прежде чем мы приступим к изучению запросов к базе данных, мы поговорим о массивах, функциях и многих других довольно важных вещах, так что не "переключайтесь" и подпишитесь на ленту новостей, что бы быть в курсе новых постов Если есть какие то вопросы, или мысли - пишите! Удачи Вам, у меня все!
Например последние 10 новостей
http://rio-shaman.ru/index.php?blog=38
При написание модуля мини новостей, из базы данных выводится именно 10 последних заметок.