|
|||||||||||||||
|
|
||||||||||||||
В этой части методического пособия будет рассказано о следующем:
|
Открывающий (начальный) тэг | Закрывающий (конечный) тэг |
<?php | ?> |
<? | ?> |
<script language="php"> | </script> |
В дальнейшем вы будете использовать все три типа тэгов, и все они будут работать без ошибок.
http://localhost/phptags.php
и нажмите клавишу Enter. B рабочем окне браузера появится результат работы скрипта:
Рис. 1.1. Результат работы скрипта phptags.php
Если вы используете РНР внешнего Web-cepвepa при повторении примеров этой книги, то замените localhoct на доменное имя Web-сервера в поле ввода адреса.
В предыдущем знакомстве созданный вами файл phptags.php состоял из трех фрагментов РНР-кода, каждый из которых печатал определенный текст HTML. В этом знакомстве мы создадим сценарий, в котором РНР-код будет находиться внутри HTML, и вы увидите, что эти два типа кодов могут мирно сосуществовать в одном документе.
http://localhos/firstscript.php
и нажмите клавишу Enter. В рабочем окне браузера появится результат работы скрипта (Рис. 1.2)Рис. 1.3. Исходный код HTML-документа
Как видно из Рис. 1.3 исходный код документа не содержит кода РНР. Однако фрагмент кода
был выполнен.
Этот фрагмент кода содержит одну инструкцию, состоящую из трех элементов: команды (echo), строки (<Р><еm> Привет всем! Я использую РНР!</еm></Р>), и признака конца инструкции (;).
Обратите внимание на команду echo, эта команда наиболее часто используется для вывода информации. Например, в приведенном выше примере, - для выдачи результирующего кода HTML:
<P><em> Привет всем! Я использую РНР!</еm></Р>
В следующем упражнении будет рассказано о часто встречающихся ошибках, которые, мы надеемся, вы не будете допускать
Если вы не закончите инструкцию точкой с запятой, то синтаксический анализато РНР выдаст сообщение об ошибке. В следующем шаге мы покажем, в каком случае может быть получено сообщение об ошибках и какие действия вы должны предпринять, чтобы их устранить.
http://localhost/errorscript.php
и нажмите клавишу Enter.Рис 1.4. Сообщение об ошибке.
Как видно из Рис. 1.4, синтаксический анализатор РНР выдал сообщение об ошибке в 11-й строке файла. Если внимательно посмотреть на 10 и 11 строки созданного нами документа
echo "<Р>Я пробую создать ошибкуР>"
echo "<Р>Oшибка получилась?Р>";
то можно заметить, что в строке 8 отсутствует признак конца инструкции, а строка 9 начинается с новой команды. Синтаксическому анализатору РНР такая команда не понятна, и он сообщает вам об ошибке синтаксиса.
Эту ошибку довольно легко исправить.
echo "<Р>Я пробую создать ошибкуР>";
http://localhost/errorscript.php
и нажмите клавишуИз Рис. 1.5 видно, что после устранения ошибки в строке 10, синтаксический анализатор РНР успешно обработал файл и выдал результат. Избегайте этой и других ошибок, уделяя особое внимание использованию точки с запятой (;) и кавычки ("), о которой вы узнаете в следующем упражнении.
Очевидно, вы запомнили, что любая инструкция вашего PHP-кода должна заканчиваться символом точка с запятой. Теперь мы познакомимся с тем, как маскировать знак «кавычки», который вы хотите вывести на экран. Это тоже надо будет запомнить. Когда вы используете кавычки внутри других кавычек, то внутренняя пара должна быть замаскирована, скрыта от внешней пары с помощью символа маскирования - обратной косой линии (\).
В следующем ниже примере мы покажем, что произойдет, если вы не будете использовать символ обратной косой линии, и как исправить такую ошибку.
Рис. 1.6. Сообщение об ошибке в сценарии.
Посмотрите 10 строку введенного РНР-кода:
echo "<Р>Я думаю это действительно "правильно"!</Р>";
Здесь внутренняя пара кавычек ("правильно") используется внутри внешней пары кавычек без символа маскирования, что и вызывает сообщение об ошибке. Эта ошибка также легко исправляется. Чтобы исправить ошибку, выполните следующие действия:
echo "<P>я думаю это действительно \"правильно\"!</Р>";
Рис. 1.7. Рабочее окно браузера после исправления ошибки.
Теперь перед внутренними кавычками стоит символ маскирования (\). Синтаксический анализатор РНР пропустит их, зная, что символы, следующие за символом маскирования, должны быть просто напечатаны.
Комментирование программ — это замечательная привычка. Ввод комментариев в HTML-документ поможет вам (а также другим, которым понадобится редактировать ваш документ позже) отслеживать отдельные фрагменты большого документа. С помощью комментариев вы можете вставить в текст программы собственные примечания, которые помогут вам в процессе ее разработки и отладки.
HTML-комментарии игнорируются браузером и содержатся между тэгами <!— и -->. Например, следующий комментарий напомнит вам, что ниже расположены коды вашего логотипа:
<!-- Логотип расположен здесь -->
В РНР тоже используются комментарии, которые игнорируются синтаксическим анализатором. PHP-комментариям обычно предшествует двойной слеш, например:
// Это комментарии в сценарии РНР
Но могут быть использованы и другие типы комментариев, такие как:
# Это стиль комментария командного языка операционной системы
и
/* Это С-стиль комментария, который будет расположен на двух строках */
Создадим сценарий, содержащий различные типы комментариев.
http://localhost/comments.php
и нажмите клавишу Enter. В рабочем окне браузера вы не увидите абсолютно ничего (Рис. 1.8).Рис. 1.8. Рабочее окно браузера с загруженной страницей comments.php
Пустая страница получилась потому, что все, что вы набрали, было HTML-комментарием, который игнорируется. Поскольку PHP-комментарии также игнорируютcя синтаксическим анализатором РНР, то фрагмент PHP-кода не содержит никаких действительных команд.
Обратите внимание на то, что исходный код HTML-документа содержит только HTML-комментарии, комментарии РНР отсутствуют.
НTML и PHP-комментарии будут очень часто использоваться в этой книге для пояснения фрагментов кода программ. Читайте комментарии и попытайтесь выработать у себя привычку использовать их. Написание аккуратного, свободного от ошибок исходного кода программ, с комментариями и отступами, могут сделать вас известным и среди разработчиков, потому что они без особого труда смогут разобраться, что пытается сделать ваша программа.
В этой части методического пособия вы узнаете, как сделать следующее:
В переменной могут храниться значения определенного типа, такие как "синий" или "19349377". После присвоения значения переменной вы можете сослаться на эту пере-менную в любом месте вашей программы, и это значение будет всегда оставаться неизменным до тех пор, пока вы сами не измените его, о чем будет рассказано ниже.
Чтобы создать переменную, выполните следующие действия:
$username
$username="Иванов"
$username="Иванов";
Итак, мы создали переменную с именем «username» и присвоили ей значение «Иванов». Далее в этой главе мы произведем некоторые интересные действия (например, математические) с вашими переменными.
Из предыдущего знакомства вы узнали, что имена переменных начинаются с символа доллара ($). Имена переменных не могут начинаться с цифры, но могут их содержать, а также содержать символ подчеркивания (_). Кроме того, имена переменных чувстви-тельны к регистру символов, например, переменные $YOUVAR и $youvar - две различные переменные.
Создание наполненных смыслом имен для переменных поможет вам избежать головной боли при разработке программ. Если ваша программа имеет дело с переменными имени пользователя и пароля, не создавайте переменные с именами $n для имени и $р для пароля потому что эти имена не наполнены смыслом. Если вы начнете разбираться в программе с такими именами переменных неделю спустя, то велика вероятность того, что вы забудете, что обозначают переменные $n и $р, ведь они могут означать «number»(номер) вместо «name» (имя) и «page» (страница) вместо «password» (пароль).
При программировании в РНР вы будете иметь дело с двумя основными типами переменных: скалярным типом и массивами. Скалярные переменные содержат только одно значение, а массивы состоят из списка значений или даже из нескольких списков.
В описанном ранее примере мы создали переменную ($username="Иванов";), которая является скалярной. Программы в этой книге главным образом будут иметь дело со ска-лярными переменными. Вы можете найти информацию о работе с массивами в Прило-жении В "Краткий справочник по языку РНР".
Когда вы присваиваете значение переменной, вы обычно указываете один из следующих типов значений:
Перед началом программирования своего РНР сценария тщательно планируйте назначение переменных и их имена, используйте комментарии в тексте своей программы - это напомнит вам самим их назначение.
Создадим простой сценарий, в котором объявим различные типы переменных, присвоим им значения и затем просто выведем их значения на экран.
http://localhost/printvarscript.php
Рис. 1.10. Результат запроса файла printvarscript.php
На web-страничке, приведённой на рисунке 1.10 вы можете видеть результат присвоения переменным $intvat, $floatvar и $stringvar значений, которые и были напечатаны.
Теперь мы расскажем об использовании операторов для изменения значений переменных
В предыдущем знакомстве мы уже использовали один из операторов (=) для присвоения значений вашим переменным. Существуют и другие типы операторов присвоения, а также другие типы операторов вообще. Основное назначение операторов - производить некоторые действия над значениями переменных. Это могут быть действия присвоения значения переменной, изменения значения переменной, сравнения двух и более значений.
Перечислим основные типы операторов РНР и их основные функции:
Оставшаяся часть этой главы будет посвящена описанию нескольких основных операторов, используемых в РНР. Мы напишем сценарии для каждого из рассмотренных типов операторов.
Вы уже видели оператор присвоения в работе. Знак равенства (=) является основным оператором присвоения. Запомните, что = не означает «равно чему-либо»! Для этого используется = = (двойной знак равенства), означающий «равно чему-либо», тогда как одиночный знак равенства = обозначает «присвоить значение».
В приведенной ниже таблице приведены различные типы операторов присвоения и примеры их записи в сценарии.
Оператор |
Пример записи |
Выполняемое действие |
+= | $a +=3 | Увеличивает текущее значение переменной на значение, находящееся справа от знака оператора |
-= | $a -=3 | Уменьшает текущее значение переменной на значение, находящееся справа от знака оператора. |
.= | $a .="строка" | Объединяет (добавляет к) текущее значение со значением, находящимся справа от знака равенства. |
Создадим простой сценарий, показывающий, как работают эти операторы. Этот сценарий присвоит переменным значения, затем изменит эти значения и выведет результат на экран.
http://localhost/assignscript.php
и нажмите клавишу Enter.В окне браузера появится страница с текстом (Рис. 1.11), на которой вы увидите результат вычислений.
Рис. 1.11. Результат работы сценария assignscript.php.
Арифметические операторы являются основой математики. В приведенной ниже таблице показаны основные арифметические операторы, которые должны быть вам xopoшо известны.
Оператор |
Пример записи |
Выполняемое действие |
+ |
$b = $a + 3; | Складывает значения |
- |
$b = $a - 3; | Вычитает значения |
* |
$b = $a * 3; | Умножает значения |
/ |
$b = $a / 3; | Делит значения |
% |
$b = $a % 3; | Определяет остаток от целочисленного деления одной переменной на другую |
Внимание! В скрипте используется символ маскирования перед знаком доллара (\$), и поэтому знак доллара в браузере будет отображен как символ, иначе начнется интерпретация его как переменной.
http://localhost/arithmeticscript.php
и нажмите клавишу Enter. B окне браузера появится страница с результатами ваших вычислений (Рис. 1.12).
Рис. 1.12. Результат работы сценария arithmeticscript.php
Оператор |
Оперделение |
= = |
Равно |
!= |
Не равно |
> |
Больше чем |
< |
Меньше чем |
>= |
Больше или равно |
<= |
Меньне или равно |
Результатом каждой из этих операций является одно из двух: либо истина либо ложь. Вы можете, в зависимости от результата, пользуясь операторами управления, такие как if [...] else и while , выполнять определенные задачи.
Создадим простой сценарий для демонстрации результата выполнения неоторых операторов сравнения с помощью оператора управления if...else и выведем результат на экран.
Обратите внимание, что выражение сравнения должно помещаться в круглые скобки.
Фигурные скобки ( { ) и ( } ) служат для разделения блоков операторов внутри структуры управления.
http://localhost/comparisonscript.php
и нажмите клавишу Enter.B окне браузера появится страница с текстом (Рис. 1.13).
Логические операторы в вашем сценарии позволяют определять истинность условий, таких, как условия сравнения в предыдущем знакомстве. В операторах if...else или while, логические операторы используются для вычисления условия. Сейчас мы рассмотрим логические операторы && (and - "и") и || (or - "или"), которые применяются для вычисления логического выражения, в котором присутствуют несколько сравнений.
Поскольку ваше выражение фактически состоит из двух небольших выражений, заключенных в скобки, то все выражение целиком должно быть также заключено в круглые скобки.
В окне браузера появится страница с текстом (Рис. 1.14).
Рис. 1.14. Результат работы сценария logicalscript.php
На экран будет выведено сообщение, связанное с результатом сравнения. Оба выражения в приведенном выше примере истинны. В первой проверке только одно выражение может быть истинно — этому условию удовлетворяет значение переменной $hot, которое имеет значение "да". Во второй проверке оба выражения должны быть истинны и они являются таковыми (переменная $degrees имеет значение 95, которое больше чем 80, и переменная $hot имеет значение "да".
В РНР используется большое число других типов операторов. Мы будем пояснять их по мере их появления в книге. Операторы, перечисленные в этой главе, будут в ам полезны для начала программирования на языке РНР. В следующей главе мы будем использовать полученные ранее знания о переменных и операторах для составления сценариев, выполняющих более интересные действия, чем те, которые мы уже рассмотрели.
|
|
|