Студопедия — Конструкция continue
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Конструкция continue






Конструкция continue так же, как и break, работает только "в паре" с циклическими конструкциями. Она немедленно завершает текущую итерацию цикла и переходит к новой (конечно, если выполняется условие цикла для цикла с предусловием). Точно так же, как и для break, для continue можно указать уровень вложенности цикла, который будет продолжен по возврату управления.
В основном continue позволяет вам сэкономить количество фигурных скобок в коде и увеличить его удобочитаемость. Это чаще всего бывает нужно в циклах-фильтрах, когда требуется перебрать некоторое количество объектов и выбрать из них только те, которые удовлетворяют определенным условиям. Приведем пример использования конструкции continue:

<?php
$x=0;
while ($x++<5) {
if ($x==3) continue;
echo "<b>Итерация $x</b><br>";
}
// Цикл прервется только на третьей итерации
?>

Рассмотренный скрипт выводит:

Итерация 1
Итерация 2
Итерация 4
Итерация 5

Грамотное использование break и continue позволяет заметно улучшить "читабельность" кода и количество блоков else.

37. Обработка запросов к веб-серверу с помощью PHP.

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

Внутри PHP-скрипта существует несколько способов получения доступа к данным, переданным клиентом по протоколу HTTP. До версии PHP 4.1.0 доступ к таким данным осуществлялся по именам переданных переменных (напомним, что данные передаются в виде пар «имя переменной, символ «=», значение переменной»). Таким образом, если, например, было передано first_name=Nina, то внутри скрипта появлялась переменная $first_name со значением Nina. Если требовалось различать, каким методом были переданы данные, то использовались ассоциативные массивы $HTTP_POST_VARS и $HTTP_GET_VARS, ключами которых являлись имена переданных переменных, а значениями – соответственно значения этих переменных. Таким образом, если пара first_name = Nina передана методом GET, то $HTTP_GET_VARS["first_name"]="Nina";.

Использовать в программе имена переданных переменных напрямую небезопасно. Поэтому было решено начиная с PHP 4.1.0 задействовать для обращения к переменным, переданным с помощью HTTP-запросов, специальный массив – $_REQUEST. Этот массив содержит данные, переданные методами POST и GET, а также с помощью HTTP cookies. Это суперглобальный ассоциативный массив, т.е. его значения можно получить в любом месте программы, используя в качестве ключа имя соответствующей переменной (элемента формы).

Пример 4.2. Допустим, мы создали форму для регистрации участников заочной школы программирования, как в приведенном выше примере. Тогда в файле 1.php, обрабатывающем эту форму, можно написать следующее:

<?php

$str = "Здравствуйте,

".$_REQUEST["first_name"]. "

".$_REQUEST["last_name"]."! <br>";

$str.="Вы выбрали для изучения курс по

".$_REQUEST["kurs"];

echo $str;

?>

Пример 4.2. Файл 1.php, обрабатывающий форму form.html

Тогда, если в форму мы ввели имя «Вася», фамилию «Петров» и выбрали среди всех курсов курс по PHP, на экране браузера получим такое сообщение:

Здравствуйте, Вася Петров!

Вы выбрали для изучения курс по PHP

После введения массива $_REQUEST массивы $HTTP_POST_VARS и $HTTP_GET_VARS для однородности были переименованы в $_POST и $_GET соответственно, но сами они из обихода не исчезли из соображений совместимости с предыдущими версиями PHP. В отличие от своих предшественников, массивы $_POST и $_GET стали суперглобальными, т.е. доступными напрямую и внутри функций и методов.

38. PHP. Операторы INCLUDE и REQUIRE. Особенности написания функций. ООП и работа с классами.

Какую конструкцию и когда использовать - Include или Require?

В этой статье я расскажу Вам про инструкции include, require, include_once и require_once, которые предназначены для подключения дополнительных PHP-файлов в сценарий.

Синтаксис:

include имя_файла;

require имя_файла;

Эти директивы заменяются интерпретатором в процессе выполнения скрипта на содержимое файла, указанного в качестве параметра.

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

Отличие данных директив состоит в том, что в отличие от include, require требует обязательного присутствия подключаемого файла и выдает критическую ошибку при его отсутствии, а include - лишь предупреждение. Разница в скорости работы минимальна.

Как было сказано выше, include если не обнаружит файла, просто выдаст предупреждение, require выдаст фатальную ошибку.

Давайте рассмотрим это на примере, подразумевая, что файла test.php нет.

<?php

// Выведет: Warning: include(test.php)

// но сценарий продолжает выполняться

include 'test.php';

// Выведет: text

echo 'text';

?>

А теперь рассмотрим код с конструкцией require:

<?php

// Выведет: Fatal error: require()

// и сценарий прекратит выполняться

require 'test.php';

echo 'text';

?>

В большинстве случаев, особенно учитывая что на рабочем сервере вывод ошибок отключен, не подключение любого из файлов критично, и лучше остановить работу приложения, чем ловить кучу warning'ов в лог от других компонентов, которым требовались различные ресурсы и функционал данного файла (класс, константы, функции и т.п.)

Конструкция require поддерживает включения удаленных файлов (начиная с версии PHP 4.3.0), если такая возможность включена в конфигурационном файле PHP.

Помимо include и require существуют инструкции однократного включения - include_once и require_once. Они работают так же, как и обычные include и require, но перед подключением файла проверяют, был ли он подключен ранее или нет. Это уберегает Вас от многократного подключения одного и того же файла.

До версии PHP 4.0.2 применялись следующие правила: require всегда пыталась читать файл назначения, даже если строка, в которой он указан никогда не выполнялась. Условный оператор не влиял на require. Однако, сейчас, они практически идентичны. Единственное отличие этих конструкций в том, что require требует обязательного присутствия подключаемого файла и выдает критическую ошибку при его отсутствии, а include - лишь предупреждение.

Иногда бывает нужно узнать какие файлы были подключены выше описанными директивами. Для этого в php есть две идентичные функции: get_included_files и get_required_files. Каждая из них возвращает массив с именами включенных файлов.







Дата добавления: 2015-09-15; просмотров: 361. Нарушение авторских прав; Мы поможем в написании вашей работы!



Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

Важнейшие способы обработки и анализа рядов динамики Не во всех случаях эмпирические данные рядов динамики позволяют определить тенденцию изменения явления во времени...

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Ученые, внесшие большой вклад в развитие науки биологии Краткая история развития биологии. Чарльз Дарвин (1809 -1882)- основной труд « О происхождении видов путем естественного отбора или Сохранение благоприятствующих пород в борьбе за жизнь»...

Этапы трансляции и их характеристика Трансляция (от лат. translatio — перевод) — процесс синтеза белка из аминокислот на матрице информационной (матричной) РНК (иРНК...

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

Понятие метода в психологии. Классификация методов психологии и их характеристика Метод – это путь, способ познания, посредством которого познается предмет науки (С...

ЛЕКАРСТВЕННЫЕ ФОРМЫ ДЛЯ ИНЪЕКЦИЙ К лекарственным формам для инъекций относятся водные, спиртовые и масляные растворы, суспензии, эмульсии, ново­галеновые препараты, жидкие органопрепараты и жидкие экс­тракты, а также порошки и таблетки для имплантации...

Тема 5. Организационная структура управления гостиницей 1. Виды организационно – управленческих структур. 2. Организационно – управленческая структура современного ТГК...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия