PHP (англ. PHP: Hypertext Preprocessor — «PHP: препроцессор гипертекста»— «Инструменты для создания персональных веб-страниц») — скриптовый язык программирования общего назначения, интенсивно применяемый для разработки веб-приложений. В настоящее время поддерживается подавляющим большинством хостинг-провайдеров и является одним из лидеров среди языков программирования, применяющихся для создания динамических веб-сайтов.
Синтаксис PHP подобен синтаксису языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl.
Для работы программы не требуется описывать какие-либо переменные, используемые модули и т. п. Любая программа может начинаться непосредственно с оператора PHP.
Простейшая программа Hello world на PHP выглядит следующим образом:
<?php echo 'Hello, world!'; ?>
Синтаксис PHP
PHP и HTML
<html> <head> <title>Пример</title> </head> <body> <? echo "Привет, я - скрипт PHP!"; ?> </body> </html>
Разделение инструкций
Инструкции разделяются также как и в C или Perl — каждое выражение заканчивается точкой с запятой.
Закрывающий тег (?>) также подразумевает конец инструкции, поэтому два следующих фрагмента кода эквиваленты:
<?php echo "Это тест"; ?> <?php echo "Это тест" ?>
Комментарии в PHP скриптах
Написание практически любого скрипта не обходится без комментариев.
PHP поддерживает комметарии в стиле ‘C’, ‘C++’ и оболочки Unix. Например:
<?php echo "Это тест"; // Это однострочный комментарий в стиле c++ /* Это многострочный комментарий еще одна строка комментария */ echo "Это еще один тест"; echo "Последний тест"; # Это комментарий в стиле оболочки Unix ?>
Однострочные комментарии идут только до конца строки или текущего блока PHP-кода, в зависимости от того, что идет перед ними.
<h1>Это <?php # echo "простой";?> пример.</h1> <p>Заголовок вверху выведет 'Это пример'.
Будьте внимательны, следите за отсутствием вложенных ‘C’-комментариев, они могут появиться во время комментирования больших блоков:
<?php /* echo "Это тест"; /* Этот комментарий вызовет проблему */ */ ?>
Однострочные комментарии идут только до конца строки или текущего блока PHP-кода, в зависимости от того, что идет перед ними. Это означает, что HTML-код после // ?> БУДЕТ напечатан: ?> выводит из режима PHP и возвращает в режим HTML, но // не позволяет этого сделать.
Переменные в PHP
Имена переменных обозначаются знаком $. То же самое «Привет, я — скрипт PHP! » можно получить следующим образом:
<?php $message = "Привет, я - скрипт PHP!"; echo $message; ?>
Типы данных в PHP
PHP поддерживает восемь простых типов данных:
Четыре скалярных типа:
— boolean (двоичные данные)
— integer (целые числа)
— float (числа с плавающей точкой или ‘double’)
— string (строки)
Два смешанных типа:
— array (массивы)
— object (объекты)
И два специальных типа:
resource (ресурсы)
NULL («пустые»)
Существуют также несколько псевдотипов:
— mixed (смешанные)
— number (числа)
— callback (обратного вызова)
Выражения в PHP
Основными формами выражений являются константы и переменные. Например, если вы записываете «$a = 100», вы присваиваете ‘100’ переменной $a:
$a = 100;
В приведенном примере $a — это переменная, = — это оператор присваивания, а 100 — это и есть выражения. Его значение 100.
Выражением может быть и переменная, если ей сопоставлено определенное значение:
$x = 7; $y = $x;
В первой строке рассмотренного примера выражением является константа 7, а во второй строке — переменная $x, т.к. ранее ей было присвоено значение 7. $y = $x также является выражением.
Операторы PHP
Оператором называется нечто, состоящее из одного или более значений (выражений, если говорить на жаргоне программирования), которое можно вычислить как новое значение (таким образом, вся конструкция может рассматриваться как выражение).
Примеры операторов PHP:
Операторы присвоения:
<?php $a = ($b = 4) + 5; // результат: $a установлена значением 9, переменной $b присвоено 4. ?>
Комбинированные операторы:
<?php $a = 3; $a += 5; // устанавливает $a значением 8, аналогично записи: $a = $a + 5; $b = "Hello "; $b .= "There!"; // устанавливает $b строкой "Hello There!", как и $b = $b . "There!"; ?>
Строковые операторы:
<?php $a = "Hello "; $b = $a . "World!"; // $b содержит строку "Hello World!" $a = "Hello "; $a .= "World!"; // $a содержит строку "Hello World!" ?>
Существуют также логические операторы и операторы сравнения, однако их принято рассматривать в контексте управляющих конструкций языка.
Управляющие конструкции языка PHP
Основными конструкциями языка PHP являются:
- Условные операторы (if, else);
- Циклы (while, do-while, for, foreach, break, continue);
- Конструкции выбора (switch);
- Конструкции объявления (declare);
- Конструкции возврата значений (return);
- Конструкции включений (require, include).
Примеры конструкций языка PHP:
<?php if ($a > $b) echo "значение a больше, чем b"; ?>
Приведенный пример наглядно показывает использование конструкции if совместно с оператором сравнения ($a > $b).
В следующем примере если переменная $a не равна нулю, будет выведена строка «значение a истинно (true), то есть показано взаимодействие условного оператора (конструкции) if с логическим оператором:
<?php if ($a) echo "значение a истинно (true) "; ?>
А вот пример цикла while:
<?php $x=0; while ($x++<10) echo $x; // Выводит 12345678910 ?>
Пользовательские функции в PHP
В любом языке программирования существуют подпрограммы. В языке C они называются функциями, в ассемблере — подпрограммами, а в Pascal существуют два вида подпрограмм: процедуры и функции.
Подпрограмма — это специальным образом оформленный фрагмент программы, к которому можно обратиться из любого места внутри программы. Подпрограммы существенно упрощают жизнь программистам, улучшая читабельность исходного кода, а также сокращая его, поскольку отдельные фрагменты кода не нужно писать несколько раз.
Приведем пример пользовательской функции на PHP:
<?php function funct() { $a = 100; echo "<h4>$a</h4>"; } funct(); ?>
Сценарий выводит 100
Пользовательским функциям в PHP можно передавать аргументы и получать возвращаемые функциями значения.
Встроенные (стандартные) функции PHP
PHP содержит огромное колличество встроенных функций, способных выполнять задачи различного уровня сложности.
Портал PHP.SU содержит полный справочник по стандартным функциям PHP.
ООП и PHP
PHP имеет достаточно хорошую поддержку объектно-ориентированного программирования (ООП).
В PHP можно создавать классы различных уровней, объекты и достаточно гибко ими оперировать.
Вот пример PHP класса и его использования:
<?php // Создаем новый класс Coor: class Coor { // данные (свойства): var $name; // методы: function Getname() { echo "<h3>John</h3>"; } } // Создаем объект класса Coor: $object = new Coor; // Получаем доступ к членам класса: $object->name = "Alex"; echo $object->name; // Выводит 'Alex' // А теперь получим доступ к методу класса (фактически, к функции внутри класса): $object->Getname(); // Выводит 'John' крупными буквами ?>
Подробно о классах и ООП в PHP на сайте php.su