Лабораторная работа 3. Разработка скриптов для генерации страниц
Скачать 248.71 Kb.
|
Это пример.Заголовок вверху выведет 'Это пример'. Будьте внимательны, следите за отсутствием вложенных 'C'-комментариев, они могут появиться во время комментирования больших блоков: /* echo "Это тест"; /
*/ ?> Однострочные комментарии идут только до конца строки или текущего блока PHP-кода, в зависимости от того, что идет перед ними. Это означает, что HTML-код после // ?> БУДЕТ напечатан: ?> выводит из режима PHP и возвращает в режим HTML, но // не позволяет этого сделать. Переменные в PHP Общие понятия о переменных в PHP Как и в любом другом языке программирования, в PHP существует такое понятие, как переменная. При программировании на PHP можно не скупиться на объявление новых переменных. Принципы экономии памяти, которые были актуальны несколько лет назад, сегодня в расчет не принимаются. Однако, при хранении в переменных больших объемов памяти, лучше удалять неиспользуемые переменные, используя оператор Unset. Вообще, переменная - это область оперативной памяти, доступ к которой осуществляется по имени. Все данные, с которыми работает программа, хранятся в виде переменных (исключение — константа, которая, впрочем, может содержать только число или строку). Такого понятия, как указатель (как в Си), в PHP не существует — при присвоении переменная копируется один-в-один, какую бы сложную структуру она ни имела. Тем не менее, в PHP, начиная с версии 4, существует понятие ссылок — жестких и символических. Имена всех переменных в PHP должны начинаться со знака $ — так интерпретатору значительно легче "понять" и отличить их, например, в строках. Имена переменных чувствительны к регистру букв: например, $var — не то же самое, что $Var или $VAR: В официальной документации PHP указано, что имя переменной может состоять не только из букв "Латиницы" и цифр, но также и из любых символов, код ASCII которых старше 127, — в частности, и из символов кириллицы, то есть "русских" букв! Однако не рекоммендуется применять кириллицу в именах переменных — хотя бы из-за того, что в различных кодировках ее буквы имеют различные коды. Впрочем, поэксперементируйте и делайте так, как вам будет удобно. Можно сказать, что переменные в PHP — это особые объекты, которые могут содержать в буквальном смысле все, что угодно. Приведем некоторые примеры переменных в PHP:
Отличительным преимуществом PHP является то, что в PHP не нужно ни описывать переменные явно, ни указывать их тип. Интерпретатор все это делает сам. Однако иногда он может ошибаться (например, если в текстовой строке на самом деле задано десятичное число), поэтому изредка возникает необходимость явно указывать, какой же тип имеет то или иное выражение. Локальные переменные в PHP Переменная, объявленная внутри пользовательской функции, считается локальной; другими словами, на нее можно ссылаться только в этой функции. При любом присваивании вне функции будет использоваться совершенно другая переменная, которая не имеет ничего общего (кроме имени) с переменной, объявленной внутри функции. При выходе из пользовательской функции, в которой была объявлена локальная переменная, эта переменная и ее значение уничтожаются. Основное достоинство локальных переменных — отсутствие непредвиденных побочных эффектов, связанных со случайной или намеренной модификацией глобальной переменной. Рассмотрим следующий пример: $a = 1; /* глобальная область видимости */ function Test() { echo $a; /
Test(); ?> Этот скрипт не сгенерирует никакого вывода, поскольку выражение echo указывает на локальную переменную $a, а в пределах локальной области видимости ей не не было присвоено значение. Подход к области видимости в PHP отличается от языка C в том, что глобальные переменные в C автоматически доступны функциям, если только они не были перезаписаны локальным определением. В PHP, если глобальная переменная будет использоваться внутри функции, она должна быть объявлена глобальной внутри нее: $a = 1; /* глобальная область видимости */ function Test() { global $a; /* Объявляем переменную $a глобальной */ echo $a; /
Test(); ?> В результате работы скрипта функция test() возвратит "1", поскольку мы объявили переменную $a глобальной, то есть, сделали переменную $a доступной для всей программы (скрипта). Статические переменные в PHP Помимо локальных и глобальных переменных, в PHP существует еще один тип переменных - статические переменные. Если в теле пользовательской функции объявлена статическая переменная, то компилятор не будет ее удалять после завершения работы этой функции. Объявление статических переменных: function funct(){ static $int = 0 // верно static $int = 1+2; // неверно, поскольку это выражение static $int = sqrt(121); // неверно, поскольку это тоже выражение $int++; echo $int; } ?> Пример работы пользовательской функции, содержащей статические переменные: function funct() { static $a; $a++; echo "$a"; } for ($i = 0; $i++<10;) funct(); ?> Данный сценарий выводит строку: 1 2 3 4 5 6 7 8 9 10 Если мы удалим инструкцию static, будет выведена строка: 1 1 1 1 1 1 1 1 1 1 Это связано с тем, что переменная $a будет удаляться при завершении работы функции и обнуляться при каждом ее вызове. Переменная $a инкрементируется сразу после обнуления, а только потом выводится. Типы данных в PHP PHP поддерживает восемь простых типов данных: Четыре скалярных типа:
Два смешанных типа:
И два специальных типа: resource (ресурсы) NULL ("пустые") Существуют также несколько псевдотипов:
Выражения в PHP Основными формами выражений являются константы и переменные. Например, если вы записываете "$a = 100", вы присваиваете '100' переменной $a: $a = 100; В приведенном примере $a - это переменная, = - это оператор присваивания, а 100 - это и есть выражения. Его значение 100. Выражением может быть и переменная, если ей сопоставлено определенное значение: $x = 7; $y = $x; В первой строке рассмотренного примера выражением является константа 7, а во второй строке - переменная $x, т.к. ранее ей было присвоено значение 7. $y = $x также является выражением. Операторы PHP Оператором называется нечто, состоящее из одного или более значений (выражений, если говорить на жаргоне программирования), которое можно вычислить как новое значение (таким образом, вся конструкция может рассматриваться как выражение). Примеры операторов PHP: Операторы присвоения: $a = ($b = 4) + 5; // результат: $a установлена значени ем 9, переменной $b присвоено 4. ?> Комбинированные операторы: $a = 3; $a += 5; // устанавливает $a значением 8, аналогично за писи: $a = $a + 5; $b = "Hello "; $b .= "There!"; // устанавливает $b строкой "Hello There!", как и $b = $b . "There!"; ?> Строковые операторы: $a = "Hello "; $b = $a . "World!"; // $b содержит строку "Hello World! " $a = "Hello "; $a .= "World!"; // $a содержит строку "Hello World! " ?> Существуют также логические операторы и операторы сравнения, однако их принято рассматривать в контексте управляющих конструкций языка. Управляющие конструкции языка PHP Основными конструкциями языка PHP являются: 1 Условные операторы (if, else);
if ($a > $b) echo "значение a больше, чем b"; ?> Приведенный пример наглядно показывает использование конструкции if совместно с оператором сравнения ($a > $b).
if ($a) echo "значение a истинно (true) "; ?> А вот пример цикла while: $x=0; while ($x++<10) echo $x;! // Выводит 12345678910! ?> Пользовательские функции в PHP В любом языке программирования существуют подпрограммы. В языке C они называются функциями, в ассемблере - подпрограммами, а в Pascal существуют два вида подпрограмм: процедуры и функции. В PHP такими подпрограммами являются пользовательские функции. Подпрограмма - это специальным образом оформленный фрагмент программы, к которому можно обратиться из любого места внутри программы. Подпрограммы существенно упрощают жизнь программистам, улучшая читабельность исходного кода, а также сокращая его, поскольку отдельные фрагменты кода не нужно писать несколько раз. Приведем пример пользовательской функции на PHP: function funct() { $a = 100; echo " $a";} funct(); ?> Сценарий выводит 100: 100 Пользовательским функциям в PHP можно передавать аргументы и получать возвращаемые функциями значения. Встроенные (стандартные) функции PHP PHP содержит огромное колличество встроенных функций, способных выполнять задачи различного уровня сложности. ООП и PHP PHP имеет достаточно хорошую поддержку объектно-ориентированного программирования (ООП).
Вот пример PHP класса и его использования: // Создаем новый класс Coor: class Coor {
var $name;
function Getname() { echo " |