<MyRusakov.ru />

PHP и MySQL с Нуля до Гуру

PHP и MySQL с Нуля до Гуру

Данный курс - это более 20-ти часов видеоуроков по изучению PHP и MySQL. Ключевой момент курса - это создание движка для сайта с нуля. Каждая строчка комментируется. Практически для каждого урока имеются упражнения. Причём данные упражнения направлены не только на закрепление материала, но и на реализацию реальных задач, встающих перед Web-разработчиками при создании сайтов. После курса Вы сможете без проблем создавать движки для любых сайтов.

Также почти к каждому уроку идут упражнения для закрепления материала.

Просмотрев курс и выполнив упражнения, Вы сможете без проблем создавать функциональные движки для самых различных сайтов.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Циклы в PHP

Циклы в PHP

Эту статью я пишу для новичков, которые только начинают изучать PHP. Расскажу я в этой статье о всевозможных циклах в PHP, так как данной статьи у меня на сайте не было. Были только циклы в JavaScript, но, несмотря на общую схожесть, это всё-таки не то. В PHP есть 4 вида циклов.

Вот они:

  1. FOR
  2. WHILE
  3. DO-WHILE
  4. FOREACH

Разберём их по порядку и начнём с самого популярного цикла в PHP (да и не только в PHP) - это цикл FOR. Синтаксис у данного цикла следующий:

for(Выражение_1; Выражение_2; Выражение_3) {
  операторы
}

Выражение_1 выполняется сразу же и безоговорочно, Выражение_3 выполняется после каждой итерации цикла. Выражение_2 - это проверка того, нужно ли продолжать цикл. Если результат выражения будет true, то начинается следующая итерация цикла, а если false, то цикл прекращает свою работу.

Следующий тип цикла - это WHILE. Это более простой тип циклов, синтаксис которого следующий:

while(Выражение) {
  операторы
}

Пока Выражение возвращает true, цикл будет работать, а как только появится false, он прекращает свою работу.

Цикл DO-WHILE очень похож на WHILE, но с одним отличием. Условие выхода проверяется после выполнения итерации, а не до. Таким образом, данный цикл будет выполняться всегда хотя бы 1 раз. И вот синтаксис цикла DO-WHILE:

do{
  операторы
}while(Условие);

И, наконец, последний тип циклов - это foreach, который служит только для перебора массивов и объектов. Он необходим, когда ключами у массива являются не числа (которые легко перебрать через тот же FOR), а строки. Синтаксис цикла FOREACH следующий:

foreach($array_or_object as $key => $value) {
  операторы
}

И, наконец, давайте применим все 4 типа циклов в PHP для перебора массивов:

<?php
  $list = array(5, 2, 3, 10, 12, 10);
  $array = array("a" => 1, "x" => 10, "m" => -5);
  for ($i = 0; $i < count($list); $i++) {
    echo $list[$i]."; ";
  }
  echo "<br />";
  $i = 0;
  while ($i < count($list)) {
    echo $list[$i]."; ";
    $i++;
  }
  echo "<br />";
  $i = 0;
  do {
    echo $list[$i]."; ";
    $i++;
  }while($i < count($list));
  echo "<br />";
  foreach ($array as $key => $value) {
    echo "$key = $value; ";
  }
?>

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

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (16):

malina95 malina95 09.09.2012 17:53:54

Михаил помоги мне пожалуйста... Я всё таки пытаюсь сделать комментарии и я запутался в самом начале... Как занести всё в массив а потом вывести? Пробую так но не получается while ($row = $result_set->fetch_array()) { echo $row['name']; //Вывод комментариев echo "<br />"; echo $row['text_comment']; //Вывод комментариев } Помоги пожалуйста

Ответить

Admin Admin 11.09.2012 14:02:16

Записывайте всё содержимое сразу в массив в цикле $res[] = $row А потом вывести foreach($res as $value) { print $value; }

Ответить

malina95 malina95 11.09.2012 17:54:24

Всмысле так? while ($row = $result_set->fetch_array()) { $res[] = $row; foreach($res as $value) { print_r $value } }

Ответить

Admin Admin 12.09.2012 10:52:51

Нет, foreach вообще отдельно, это отдельный цикл для вывода релультата. while ($row = $result_set->fetch_assoc()) { $res[] = $row; } foreach($res as $value) { print_r($value); }

Ответить

malina95 malina95 12.09.2012 21:46:48

никак не получается....всё равно выводит Array ( [id] => 1 [page_id] => 1 [name] => ggggg [text_comment] => ggggggg [email] => [sait] => [date] => 0000-00-00 )

Ответить

Admin Admin 13.09.2012 20:20:49

Значит и был этот массив в row. Можно отдельно вторым циклом выводить и его содержимое.

Ответить

malina95 malina95 13.09.2012 20:50:41

Я напряг голову и решил сделать так,и мне так более удобно,но так не действуют стили : $page_id = 1;// Уникальный идентификатор страницы (статьи или поста) $mysqli = new mysqli("localhost", "Admin", "udiram04", "test");// Подключается к базе данных $result_set = mysql_query("SELECT * FROM `comments` WHERE `page_id`='$page_id'"); //Вытаскиваем все комментарии для данной страницы if (mysql_num_rows($result_set) > 0) { $myrow = mysql_fetch_array($result_set); do { printf ("<p><p><b>Комментарий добавил(а):</b> %s <br /> Дата: %s</p> <p>%s</p></p><hr />",$myrow[`name`],$myrow[`date`], $myrow[`text_comment`]); } while ($myrow = mysql_fetch_array($result_set)); } Помогите со стилями и скажите так нормально выводить или нужно по другому...Да и скажите о безопасности этого метода

Ответить

malina95 malina95 13.09.2012 20:51:46

А вы не подскажите как проверить мыло и добавить в таблицу?

Ответить

Admin Admin 14.09.2012 18:04:52

Не пойму как связаны стили с выводом текста комментариев, стили должны стоять отдельно. Как именно проверить? Что это действительно email можно убедиться проверив по регулярному выражению, а реальный или нет - заставить пользователя перейти по ссылке с кодом.

Ответить

malina95 malina95 14.09.2012 18:25:19

Спасибо что напомнили про отправку на мыло... После просмотра вашей рассылки про подиверждение по мылу регистрации - у меня возникла про блема(Не хочет совершенно обновлятся поле с хешем активации)

Ответить

Alexander Alexander 05.04.2013 13:08:21

А можно как-нибудь повторить определенные блоки в странице используя цикл? Нужно к примеру повторить div блок ровно столько раз, сколько записей выводится в цикле while. Я сколько не пытался - не выходит...

Ответить

Admin Admin 05.04.2013 21:08:56

<?php for ($i = 0; $i < 10; $i++) { ?> <div></div> <?php } ?>

Ответить

Alexander Alexander 05.04.2013 22:39:44

Ээ... вы неправильно меня поняли... Нужно повторить содержимое блока... Я тему на форуме создал по этому вопросу: http://myrusakov.ru/forum.html?act=thread&id=1266

Ответить

torpedko torpedko 18.06.2013 23:13:52

Михаил,а как сделать, чтобы на странице выводилось 10 статей, а если их больше 10, то остальные выводить на следуйщей странице, которая создавалась бы автоматически?

Ответить

Admin Admin 19.06.2013 18:18:37

http://myrusakov.ru/php-page-navigation.html

Ответить

torpedko torpedko 19.06.2013 18:57:57

спасибо

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.