1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-23 23:32:16 +01:00
Files
archived-doc-ru/chapters/intro.xml
2024-09-29 02:17:24 +03:00

216 lines
14 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 77f5f3b3a8bbe1ad7727201c7603d1419dd7840f Maintainer: shein Status: ready -->
<!-- Reviewed: no -->
<chapter xml:id="introduction" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<info>
<titleabbrev>Введение</titleabbrev>
<title>Что такое PHP и что он умеет делать</title>
</info>
<section xml:id="intro-whatis" annotations="chunk:false">
<title>Что такое PHP?</title>
<para>
<acronym>PHP</acronym> (рекурсивный акроним словосочетания
<emphasis>PHP: Hypertext Preprocessor</emphasis>) — распространённый
язык программирования общего назначения с открытым исходным кодом,
который сконструировали специально для веб-разработки
и который встраивают в HTML-разметку.
</para>
<para>
Простой ответ, но что он означает? Вот пример кода:
</para>
<para>
<example>
<info><title>Пример программирования на языке PHP</title></info>
<programlisting role="php">
<![CDATA[
<!DOCTYPE html>
<html>
<head>
<title>Пример</title>
</head>
<body>
<?php
echo "Привет, я — PHP-скрипт!";
?>
</body>
</html>
]]>
</programlisting>
</example>
</para>
<para>
Вместо рутинного вывода HTML-кода командами языка
(как в языках C или Perl),
PHP-страницы содержат HTML-разметку со встроенным кодом, который проделывает <replaceable>полезную работу</replaceable>
(в примере — выводит текст «<computeroutput>Привет, я — PHP-скрипт!</computeroutput>»).
PHP-код отделяется <link
linkend="language.basic-syntax.phpmode">начальным и конечным тегами
<code>&lt;?php</code> и <code>?&gt;</code></link> — инструкциями начала и завершения обработки кода,
которые разрешают входить в <quote>PHP-режим</quote> и выходить из него.
</para>
<para>
Язык PHP отличается от языка JavaScript, который обрабатывается на клиентской стороне,
тем, что PHP-скрипты выполняются на сервере, и генерируют HTML-разметку, которая затем
посылается клиенту. Клиент получит результаты запуска этого скрипта,
но не будет знать, какой базовый код сгенерировал результаты.
Веб-сервер настраивается даже так, чтобы
обычные HTML-файлы обрабатывались процессором PHP, и тогда клиенты
даже не смогут узнать, получают ли они обычный HTML-файл или
результат выполнения скрипта.
</para>
<para>
Язык PHP чрезвычайно прост для начинающих программистов, но предлагает
расширенные возможности программистам с опытом.
Не бойтесь читать длинный список возможностей PHP.
Написать простые PHP-скрипты получится уже через 1-2 часа
после начала знакомства с языком.
</para>
<para>
Хотя PHP-разработка ориентирована на то, чтобы создавать серверные скрипты,
язык этим не ограничивается.
Продолжайте чтение и не пропустите главу
«<link linkend="intro-whatcando">Что умеет PHP</link>» или начните непосредственно
с «<link linkend="tutorial">Вводного руководства</link>», чтобы перейти
к изучению веб-программирования.
</para>
</section>
<section xml:id="intro-whatcando" annotations="chunk:false">
<info><title>Что умеет PHP</title></info>
<para>
PHP умеет делать что-угодно. Главное назначение PHP —
создавать скрипты, которые обрабатываются на сервере;
поэтому PHP умеет выполнять всё то, что выполняет любая другая CGI-программа,
например, обрабатывать данные форм, генерировать динамические
страницы или отсылать и принимать cookies.
Но PHP умеет намного больше.
</para>
<para>
PHP применяют в двух основных областях.
<itemizedlist>
<listitem>
<simpara>
Создают скрипты, которые обрабатываются на стороне сервера.
Это традиционная и главная цель PHP. Чтобы написать и выполнить скрипт, понадобятся три вещи:
Синтаксический анализатор PHP (в виде CGI-программы или серверного модуля),
веб-сервер и браузер. Эти инструменты запускают на локальной машине,
чтобы просто поэкспериментировать с программированием на PHP.
Более подробные сведения даёт раздел
«<link linkend="install">Установка и настройка</link>».
</simpara>
</listitem>
<listitem>
<simpara>
Создают скрипты для запуска в командной строке.
PHP-скрипты запускаются без сервера или браузера,
потребуется только парсер — синтаксический анализатор PHP. Такой способ работы
с PHP идеально подходит для скриптов, которые требуется выполнять
регулярно, например, через <command>cron</command> (на платформах *nix или Linux)
или через «Планировщик задач» на платформах
Windows. Этими скриптами также просто обрабатывают тексты.
Дополнительную информацию даёт раздел
«<link linkend="features.commandline">Работа с PHP из командной строки</link>».
</simpara>
</listitem>
</itemizedlist>
</para>
<para>
PHP <link linkend="install">работает</link> на большей части операционных систем, включая
Linux, многие модификации Unix (например, HP-UX, Solaris и OpenBSD),
Microsoft Windows, macOS, RISC OS и многие другие.
PHP также поддерживает бо́льшую часть современных
веб-серверов наподобие Apache, IIS и многих других.
Сюда входит любой веб-сервер, который умеет работать
с двоичным PHP-файлом FastCGI-интерфейса, например, серверы Lighttpd и nginx.
PHP работает либо как модуль, либо как CGI-процессор.
</para>
<para>
С PHP разработчик получает свободу выбора
операционной системы и веб-сервера. Больше того, у программиста
появляется выбор между процедурным
или объектно-ориентированным программированием (ООП), или сочетанием обеих парадигм.
</para>
<para>
Программирование на PHP не ограничивается выводом HTML-разметки. PHP также умеет
выводить файлы разных типов, например, изображений или PDF-файлов,
шифровать данные и отправлять электронную почту.
PHP также легко выводит текст наподобие JSON- или XML-строк.
PHP умеет автоматически генерировать эти файлы и сохранять
их в файловой системе, а не выводить на печать,
чтобы сформировать серверный кеш для динамического содержимого.
</para>
<para>
Одно из значительных преимуществ языка PHP — поддержка
<link linkend="refs.database">широкого круга баз данных</link>.
Написать веб-страницу с поддержкой базы данных невероятно просто.
Можно использовать модуль конкретной базы данных
(например, <link linkend="book.mysqli">mysql</link>) или модуль
уровня абстракции наподобие <link linkend="book.pdo">PDO</link>,
или соединиться с базой данных с поддержкой стандарта
открытого подключения к базе данных (ODBC) через модуль <link linkend="book.uodbc">ODBC</link>.
Для других баз данных, например, CouchDB, можно использовать библиотеку <link linkend="book.curl">cURL</link>
или <link linkend="book.sockets">сокеты</link>.
</para>
<para>
PHP также поддерживает взаимодействие с другими службами
через протоколы LDAP, IMAP, SNMP, NNTP, POP3, HTTP,
COM (на платформах Windows) и многие другие. PHP также
умеет открывать необработанные сетевые сокеты и взаимодействовать по другим протоколам.
PHP поддерживает стандарт обмена сложными структурами
данных WDDX практически между всеми языками веб-программирования.
Обращая внимание на взаимодействие между разными
языками, следует упомянуть о поддержке объектов языка Java и возможности
использовать их как PHP-объекты.
</para>
<para>
PHP умеет <link linkend="refs.basic.text">обрабатывать текст</link>,
включая Perl-совместимые регулярные выражения (<link linkend="book.pcre">PCRE</link>)
и другие модули и инструменты <link linkend="refs.xml">для обработки и доступа
к XML-документам</link>. PHP стандартизирует XML-модули
на прочной основе библиотеки <link linkend="book.libxml">libxml2</link>,
а также расширяет набор инструментов для обработки XML-документов за счёт добавления поддержки модулей
<link linkend="book.simplexml">SimpleXML</link>, <link linkend="book.xmlreader">XMLReader</link>
и <link linkend="book.xmlwriter">XMLWriter</link>.
</para>
<para>
Другие интересные модули распределили
как <link linkend="extensions">в алфавитном порядке</link>,
так и <link linkend="funcref">по категориям</link>.
Существуют также дополнительные <link linkend="install.pecl.intro">PECL-модули</link>,
часть которых описывает это руководство, например, модуль <link xlink:href="&url.xdebug;">XDebug</link>.
</para>
<para>
Как видно, этой страницы недостаточно, чтобы
перечислить все возможности и преимущества языка PHP.
Прочитайте разделы «<link linkend="install">Установка и настройка</link>»
и просмотрите главу «<link linkend="funcref">Справочник
по функциям</link>», которые дают дополнительные сведения
о модулях, которые упоминает эта часть руководства.
</para>
</section>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->