PHP (рекурсивный акроним словосочетания PHP: Hypertext Preprocessor) — распространённый язык программирования общего назначения с открытым исходным кодом, который сконструировали специально для веб-разработки и который встраивают в HTML-разметку.
Простой ответ, но что он означает? Вот пример кода:
Пример #1 Пример программирования на языке PHP
<!DOCTYPE html>
<html>
<head>
<title>Пример</title>
</head>
<body>
<?php
echo "Привет, я — PHP-скрипт!";
?>
</body>
</html>
Вместо рутинного вывода HTML-кода командами языка
(как в языках C или Perl),
PHP-страницы содержат HTML-разметку со встроенным кодом, который проделывает полезную работу
(в примере — выводит текст «Привет, я — PHP-скрипт!»).
PHP-код отделяется начальным и конечным тегами
<?php
и ?>
— инструкциями начала и завершения обработки кода,
которые разрешают входить в PHP-режим
и выходить из него.
Язык PHP отличается от языка JavaScript, который обрабатывается на клиентской стороне, тем, что PHP-скрипты выполняются на сервере, и генерируют HTML-разметку, которая затем посылается клиенту. Клиент получит результаты запуска этого скрипта, но не будет знать, какой базовый код сгенерировал результаты. Веб-сервер настраивается даже так, чтобы обычные HTML-файлы обрабатывались процессором PHP, и тогда клиенты даже не смогут узнать, получают ли они обычный HTML-файл или результат выполнения скрипта.
Язык PHP чрезвычайно прост для начинающих программистов, но предлагает расширенные возможности программистам с опытом. Не бойтесь читать длинный список возможностей PHP. Написать простые PHP-скрипты получится уже через 1-2 часа после начала знакомства с языком.
Хотя PHP-разработка ориентирована на то, чтобы создавать серверные скрипты, язык этим не ограничивается. Продолжайте чтение и не пропустите главу «Что умеет PHP» или начните непосредственно с «Вводного руководства», чтобы перейти к изучению веб-программирования.
PHP умеет делать что-угодно. Главное назначение PHP — создавать скрипты, которые обрабатываются на сервере; поэтому PHP умеет выполнять всё то, что выполняет любая другая CGI-программа, например, обрабатывать данные форм, генерировать динамические страницы или отсылать и принимать cookies. Но PHP умеет намного больше.
PHP применяют в двух основных областях.
PHP работает на большей части операционных систем, включая Linux, многие модификации Unix (например, HP-UX, Solaris и OpenBSD), Microsoft Windows, macOS, RISC OS и многие другие. PHP также поддерживает бо́льшую часть современных веб-серверов наподобие Apache, IIS и многих других. Сюда входит любой веб-сервер, который умеет работать с двоичным PHP-файлом FastCGI-интерфейса, например, серверы Lighttpd и nginx. PHP работает либо как модуль, либо как CGI-процессор.
С PHP разработчик получает свободу выбора операционной системы и веб-сервера. Больше того, у программиста появляется выбор между процедурным или объектно-ориентированным программированием (ООП), или сочетанием обеих парадигм.
Программирование на PHP не ограничивается выводом HTML-разметки. PHP также умеет выводить файлы разных типов, например, изображений или PDF-файлов, шифровать данные и отправлять электронную почту. PHP также легко выводит текст наподобие JSON- или XML-строк. PHP умеет автоматически генерировать эти файлы и сохранять их в файловой системе, а не выводить на печать, чтобы сформировать серверный кеш для динамического содержимого.
Одно из значительных преимуществ языка PHP — поддержка широкого круга баз данных. Написать веб-страницу с поддержкой базы данных невероятно просто. Можно использовать модуль конкретной базы данных (например, mysql) или модуль уровня абстракции наподобие PDO, или соединиться с базой данных с поддержкой стандарта открытого подключения к базе данных (ODBC) через модуль ODBC. Для других баз данных, например, CouchDB, можно использовать библиотеку cURL или сокеты.
PHP также поддерживает взаимодействие с другими службами через протоколы LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (на платформах Windows) и многие другие. PHP также умеет открывать необработанные сетевые сокеты и взаимодействовать по другим протоколам. PHP поддерживает стандарт обмена сложными структурами данных WDDX практически между всеми языками веб-программирования. Обращая внимание на взаимодействие между разными языками, следует упомянуть о поддержке объектов языка Java и возможности использовать их как PHP-объекты.
PHP умеет обрабатывать текст, включая Perl-совместимые регулярные выражения (PCRE) и другие модули и инструменты для обработки и доступа к XML-документам. PHP стандартизирует XML-модули на прочной основе библиотеки libxml2, а также расширяет набор инструментов для обработки XML-документов за счёт добавления поддержки модулей SimpleXML, XMLReader и XMLWriter.
Другие интересные модули распределили как в алфавитном порядке, так и по категориям. Существуют также дополнительные PECL-модули, часть которых описывает это руководство, например, модуль » XDebug.
Как видно, этой страницы недостаточно, чтобы перечислить все возможности и преимущества языка PHP. Прочитайте разделы «Установка и настройка» и просмотрите главу «Справочник по функциям», которые дают дополнительные сведения о модулях, которые упоминает эта часть руководства.