﻿<?php
echo "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">\n";
echo "<HTML><HEAD><TITLE></TITLE>\n";
echo "<META content=\"TEXT/HTML; CHARSET=WINDOWS-1251\" http-equiv=CONTENT-TYPE>\n";
echo "<META content=\"Microsoft FrontPage 4.0\" name=GENERATOR>\n";
echo "</HEAD>\n";
echo "<body background=../FON.JPG>\n";
echo "<ul>\n";
echo "\n";
echo "  <li><a href=\"#a\"><font face=\"Times New Roman\" size=3>Глава1.\n";
echo "    Знакомство с PHP</font> </a> </li>\n";
echo "  <ul>\n";
echo "    <li><a href=\"#b\"><font face=\"Times New Roman\" size=\"3\">Краткая\n";
echo "      история</font>\n";
echo "      </a>\n";
echo "    </li>\n";
echo "    <li><a href=\"#c\"><font face=\"Times New Roman\" size=\"3\">Характеристики\n";
echo "      PHP</font>\n";
echo "      </a>\n";
echo "      <ul>\n";
echo "        <li><a href=\"#d\"><font face=\"Times New Roman\" size=\"3\">Традиционность</font></a></li>\n";
echo "        <li><a href=\"#e\"><font face=\"Times New Roman\" size=\"3\">Простота</font></a></li>\n";
echo "        <li><a href=\"#f\"><font face=\"Times New Roman\" size=\"3\">Эффективность</font></a></li>\n";
echo "        <li><a href=\"#g\"><font face=\"Times New Roman\" size=\"3\">Безопасность</font></a></li>\n";
echo "        <li><a href=\"#h\"><font face=\"Times New Roman\" size=\"3\">Гибкость</font></a></li>\n";
echo "        <li><a href=\"#i\"><font face=\"Times New Roman\" size=\"3\">Бесплатное\n";
echo "          распространение</font></a></li>\n";
echo "      </ul>\n";
echo "    </li>\n";
echo "    <li><a href=\"#j\"><font face=\"Times New Roman\" size=\"3\">Рекомендации\n";
echo "      пользователей</font>\n";
echo "      </a>\n";
echo "    </li>\n";
echo "    <li><a href=\"#k\"><font face=\"Times New Roman\" size=\"3\">Вводный\n";
echo "      пример</font>\n";
echo "      </a>\n";
echo "    </li>\n";
echo "    <li><a href=\"#l\"><font face=\"Times New Roman\" size=\"3\">Загрузка\n";
echo "      PHP/Apache</font>\n";
echo "      </a>\n";
echo "    </li>\n";
echo "    <li><a href=\"#m\"><font face=\"Times New Roman\" size=\"3\">Установка\n";
echo "      и настройка</font>\n";
echo "      </a>\n";
echo "      <ul>\n";
echo "        <li><a href=\"#n\"><font face=\"Times New Roman\" size=\"3\">Системы,\n";
echo "          не входящие в семейство Windows</font></a></li>\n";
echo "        <li><a href=\"#o\"><font face=\"Times New Roman\" size=\"3\">Установка\n";
echo "          в Windows 95/98/NT</font></a></li>\n";
echo "      </ul>\n";
echo "    </li>\n";
echo "    <li><a href=\"#p\"><font face=\"Times New Roman\" size=\"3\">Конфигурация\n";
echo "      PHP</font>\n";
echo "      </a>\n";
echo "      <ul>\n";
echo "        <li><a href=\"#q\"><font face=\"Times New Roman\" size=\"3\">Общие параметры\n";
echo "          конфигурации</font></a></li>\n";
echo "      </ul>\n";
echo "    </li>\n";
echo "    <li><a href=\"#r\"><font face=\"Times New Roman\" size=\"3\">Основные\n";
echo "      конструкции PHP</font>\n";
echo "      </a>\n";
echo "      <ul>\n";
echo "        <li><a href=\"#s\"><font face=\"Times New Roman\" size=\"3\">Переход\n";
echo "          в PHP</font></a></li>\n";
echo "        <li><a href=\"#t\"><font face=\"Times New Roman\" size=\"3\">Внедрение\n";
echo "          HTML в код PHP</font></a></li>\n";
echo "        <li><a href=\"#u\"><font face=\"Times New Roman\" size=\"3\">Включение\n";
echo "          нескольких сценариев PHP</font></a></li>\n";
echo "        <li><a href=\"#v\"><font face=\"Times New Roman\" size=\"3\">Комментарии\n";
echo "          в коде PHP</font></a></li>\n";
echo "      </ul>\n";
echo "    </li>\n";
echo "    <li><a href=\"#w\"><font face=\"Times New Roman\" size=\"3\">Итоги</font></a></li>\n";
echo "  </ul>\n";
echo "</ul>\n";
echo "<A NAME=\"a\"></A>\n";
echo "<p></p>\n";
echo "<p><font face=\"Times New Roman\" color=\"#000000\" size=\"5\">ГЛАВА 1</font>\n";
echo "</p>\n";
echo "<p><font face=\"Times New Roman\" color=\"#000000\" size=\"5\">Знакомство с РНР</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Последние пять лет ознаменовались\n";
echo "фантастическим развитием Интернета и новых\n";
echo "способов общения между людьми. На переднем\n";
echo "крае этого явления находится World Wide Web (WWW).\n";
echo "Ежедневно в этой новой коммуникационной\n";
echo "среде открываются тысячи новых сайтов, а\n";
echo "потребителям предлагаются новые виды услуг.\n";
echo "Вместе с бурным развитием рынка появился\n";
echo "огромный спрос на новые технологии и\n";
echo "разработчиков, владеющих ими. Если вы\n";
echo "читаете этот абзац, вероятно, вы уже\n";
echo "являетесь или скоро станете web-разработчиком.\n";
echo "Впрочем, какой бы ни была ваша профессия, вы\n";
echo "выбрали эту книгу потому, что слышали о\n";
echo "замечательной новой технологии — РНР.\n";
echo " </font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В этой главе вы познакомитесь с языком РНР,\n";
echo "получите представление о его истории и\n";
echo "возможностях, а также основную информацию,\n";
echo "необходимую для разработки сайтов с\n";
echo "поддержкой РНР. Надеюсь, приведенные\n";
echo "примеры пробудят ваш энтузиазм и наглядно\n";
echo "покажут, какие перспективы РНР открывает\n";
echo "перед вами и вашей организацией. Вы узнаете,\n";
echo "как установить и настроить программное\n";
echo "обеспечение РНР на компьютерах с Linux/UNIX или\n";
echo "Windows и как внедрить РНР в HTML. К концу главы вы\n";
echo "будете готовы к тому, чтобы углубленно\n";
echo "заняться изучением других важных аспектов\n";
echo "языка РНР. Итак, зажигайте свет, включайте\n";
echo "свою любимую музыку и устраивайтесь\n";
echo "поудобнее. Пришла пора познакомиться с тем,\n";
echo "что станет одним из важнейших пунктов в\n";
echo "вашем резюме, - с программированием на РНР.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><A NAME=\"b\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Краткая история</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "История РНР начинается с 1995 года, когда\n";
echo "независимый программист-контрактник по\n";
echo "имени Расмус Лердорф (Rasmus Lerdorf) написал\n";
echo "сценарий Perl/CGI для подсчета количества\n";
echo "посетителей сайта, прочитавших его\n";
echo "онлайновое резюме. Его сценарий решал две\n";
echo "задачи: регистрацию данных посетителя и\n";
echo "вывод количества посетителей на web-странице.\n";
echo "Развитие WWW еще только начиналось, никаких\n";
echo "специальных средств для решения этих задач\n";
echo "не было, и к автору хлынул поток сообщений с\n";
echo "вопросами. Лердорф начал бесплатно\n";
echo "раздавать свой инструментарий, названный <i>Personal\n";
echo "Home Page </i>(РНР) или <i>Hypertext Processor </i>(гипертекстовый\n";
echo "процессор).\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Шумный успех инструментария РНР заставил\n";
echo "Лердорфа приступить к разработке\n";
echo "расширений РНР. Одно из расширений\n";
echo "преобразовывало данные, введенные на форме\n";
echo "HTML, в символические переменные, что\n";
echo "позволяло экспортировать их в другие\n";
echo "системы. Чтобы добиться поставленной цели,\n";
echo "Лердорф решил в дальнейших разработках\n";
echo "перейти с Perl на С. Расширение существующего\n";
echo "инструментария РНР привело к появлению РНР\n";
echo "2.0, или PHP-FI (Personal Home Page — Form Interpretator). В\n";
echo "усовершенствовании версии 2.0 принимали\n";
echo "участие программисты со всего мира.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Новая версия РНР пользовалась\n";
echo "исключительной популярностью, и вскоре\n";
echo "образовалась основная команда\n";
echo "разработчиков. Они сохранили исходную\n";
echo "концепцию внедрения программного кода\n";
echo "прямо в HTML и переписали заново механизм\n";
echo "лексического анализа, что привело к\n";
echo "появлению РНР 3.0. К моменту выхода версии 3.0\n";
echo "в 1997 году свыше 50 000 пользователей применяли\n";
echo "РНР для улучшения своих web-страниц.\n";
echo "</font></p>\n";
echo "<p><i><font size=\"3\" color=\"#000000\"><img border=\"0\" src=\"Prim.gif\" align=left width=\"36\" height=\"35\">В\n";
echo "1997 году было решено, что сокращение РНР\n";
echo "должно означать не «Personal Home page», а «РНР Hypertext\n";
echo "Processor»&nbsp; </font></i></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В течение следующих двух лет\n";
echo "стремительное развитие РНР продолжалось. В\n";
echo "язык добавлялись сотни новых функций, а\n";
echo "количество пользователей стремительно\n";
echo "росло. В начале 1999 года служба Netcraft (http://www.netcraft.com)\n";
echo "сообщила о том, что, по минимальным оценкам,\n";
echo "число пользователей РНР превысило 1 000 000, в\n";
echo "результате чего РНР стал одним из самых\n";
echo "популярных сценарных языков в мире.</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В начале 1999 года было объявлено о\n";
echo "предстоящем выходе РНР 4.0. Хотя одной из\n";
echo "сильнейших сторон РНР была эффективность\n";
echo "выполнения сценариев, при первоначальных\n";
echo "разработках не предполагалось, что на базе\n";
echo "РНР будут строиться крупномасштабные\n";
echo "приложения. По этой причине была начата\n";
echo "работа над более устойчивым механизмом\n";
echo "лексического анализа, больше известным под\n";
echo "названием Zend (http://www.zend.com). Работа шла быстро\n";
echo "и завершилась 22 мая 2000 года выпуском РНР\n";
echo "версии 4.0.</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Кроме лексического анализатора Zend,\n";
echo "компания Zend Technologies (Израиль) распространяет\n";
echo "оптимизатор Zend, который повышает выигрыш в\n";
echo "быстродействии от применения лексического\n";
echo "анализатора Zend. Тесты показывают, что\n";
echo "ускорение работы программы в результате\n";
echo "использования оптимизатора составляет от 40\n";
echo "до 100 %. За дополнительной информацией\n";
echo "обращайтесь на сайт Zend.</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "На момент написания этой книги, по данным\n";
echo "Netcraft (http://www.netcraft.com), программное\n";
echo "обеспечение РНР было установлено более чем\n";
echo "в 3,6 миллиона доменов. Будущее РНР выглядит\n";
echo "светлым, поскольку продукт продолжает\n";
echo "активно использоваться как на крупных web-сайтах,\n";
echo "так и на компьютерах отдельных\n";
echo "пользователей.</font></p>\n";
echo "<p>\n";
echo "<font SIZE=\"3\" COLOR=\"#000000\">\n";
echo "РНР лучше всего охарактеризовать как\n";
echo "работающий на стороне сервера встроенный\n";
echo "язык сценариев Web, позволяющий\n";
echo "разработчикам быстро и эффективно</font><sup> </sup>\n";
echo "<font SIZE=\"3\" COLOR=\"#000000\">\n";
echo "строить динамические web-приложения. С\n";
echo "позиций грамматики и синтаксиса РНР\n";
echo "напоминает язык программирования С, хотя\n";
echo "разработчики не постеснялись включить в\n";
echo "него средства из других языков, в том числе\n";
echo "из Perl, Java и C++. Среди ценных заимствованных\n";
echo "возможностей — поддержка регулярных\n";
echo "выражений, мощные средства работы с\n";
echo "массивами, объектно-ориентированная\n";
echo "методология и обширная поддержка работы с\n";
echo "базами данных.\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "При написании приложений, выходящих за\n";
echo "рамки традиционной, статической\n";
echo "методологии разработки web-страниц (то есть\n";
echo "HTML), РНР также может послужить ценным\n";
echo "инструментом для создания и управления\n";
echo "динамическим содержанием, который\n";
echo "используется наряду с JavaScript, стилями, WML (Wireless\n";
echo "Markup Language) и другими полезными языками.\n";
echo "Благодаря наличию сотен стандартных\n";
echo "функций РНР в состоянии решить практически\n";
echo "любую задачу, которая может придти в голову\n";
echo "разработчику. В нем имеется обширная\n";
echo "поддержка создания графики и операций с ней,\n";
echo "математических вычислений, средств\n";
echo "электронной коммерции и таких популярных\n";
echo "технологий, как XML (Extensible Markup Language), ODBC (Open\n";
echo "Database Connectivity) и Macromedia Shockwave. Широкий выбор\n";
echo "возможностей избавляет от необходимости\n";
echo "рутинной и непростой работы по подключению\n";
echo "сторонних модулей, поэтому многие\n";
echo "разработчики со всего мира останавливают\n";
echo "свой выбор на РНР.\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Одним из главных достоинств РНР является\n";
echo "тот факт, что он внедряется прямо в HTML-код,\n";
echo "поэтому программисту не приходится писать\n";
echo "программу с множеством команд для простого\n";
echo "вывода HTML. Код HTML и РНР можно чередовать по\n";
echo "мере необходимости. РНР позволяет написать\n";
echo "фрагмент следующего вида:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;html&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;title&gt;&lt;? print &quot;Hello world!&quot;; ?&gt;&lt;/title&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;/html&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Сообщение &quot;Hello world!&quot; выводится в\n";
echo "заголовке web-страницы. Интересно то, что\n";
echo "команда print внутри конструкции, которая\n";
echo "обычно называется экранирующими\n";
echo "последовательностями РНР (&lt;?...?&gt;),\n";
echo "представляет собой законченную программу.\n";
echo "Ни длинного кода инициализации, ни\n";
echo "включения библиотек — программа состоит\n";
echo "лишь из того кода, который непосредственно\n";
echo "решает поставленную задачу!\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Конечно, для выполнения сценариев РНР\n";
echo "необходимо предварительно установить и\n";
echo "настроить программное обеспечение РНР на\n";
echo "сервере. Этот процесс описан в разделе «Загрузка\n";
echo "и установка РНР/Apache» настоящей главы.\n";
echo "Разделу предшествуют фрагменты из отзывов\n";
echo "нескольких пользователей, выступающих в\n";
echo "пользу РНР, с кратким обзором языка и его\n";
echo "истории. Но прежде чем браться за процесс\n";
echo "установки, мы познакомимся с некоторыми\n";
echo "характеристиками РНР. Этой теме посвящен\n";
echo "следующий раздел.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b></font><b>\n";
echo "<A NAME=\"c\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Характеристики РНР</font></p>\n";
echo "</b><font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Как вы, вероятно, уже поняли, главным\n";
echo "фактором при проектировании языка РНР\n";
echo "является практичность. РНР должен\n";
echo "предоставить программисту средства для\n";
echo "быстрого и эффективного решения\n";
echo "поставленных задач. Практический характер\n";
echo "РНР обусловлен пятью важными\n";
echo "характеристиками:\n";
echo "</font></p>\n";
echo "<ul>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "традиционностью;\n";
echo "</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "простотой;\n";
echo "</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "эффективностью;\n";
echo "</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "безопасностью;\n";
echo "</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "гибкостью.\n";
echo "</font></li>\n";
echo "</ul>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Существует еще одна «характеристика»,\n";
echo "которая делает РНР особенно\n";
echo "привлекательным: он распространяется\n";
echo "бесплатно!\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b><A NAME=\"d\"></A></font><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Традиционность</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Язык РНР кажется знакомым программистам,\n";
echo "работающим в разных областях. Многие\n";
echo "конструкции языка позаимствованы из Си Perl,\n";
echo "а нередко код РНР практически неотличим от\n";
echo "того, что встречается в типичных программах\n";
echo "С или Pascal. Это заметно снижает начальные\n";
echo "усилия при изучении РНР.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b><A NAME=\"e\"></A></font><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Простота</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Сценарий РНР может состоять из 10 000 строк\n";
echo "или из одной строки — все зависит от\n";
echo "специфики вашей задачи. Вам не придется\n";
echo "подгружать библиотеки, указывать\n";
echo "специальные параметры компиляции или что-нибудь\n";
echo "в этом роде. Механизм РНР просто начинает\n";
echo "выполнять код после первой экранирующей\n";
echo "последовательности (&lt;?) и продолжает\n";
echo "выполнение до того момента, когда он\n";
echo "встретит парную экранирующую\n";
echo "последовательность (?&gt;). Если код имеет\n";
echo "правильный синтаксис, он исполняется в\n";
echo "точности так, как указал программист.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b><A NAME=\"f\"></A></font><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Эффективность</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Эффективность является исключительно\n";
echo "важным фактором при программировании для\n";
echo "многопользовательских сред, к числу\n";
echo "которых относится и WWW. В РНР 4.0 был\n";
echo "реализован механизм выделения ресурсов и\n";
echo "обеспечена улучшенная поддержка объектно-ориентированного\n";
echo "программирования, а также средства\n";
echo "управления сеансом. В последней версии\n";
echo "появился и механизм подсчета ссылок (reference\n";
echo "counting), предотвращающий выделение лишней\n";
echo "памяти.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b><A NAME=\"g\"></A></font><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Безопасность</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "РНР предоставляет в распоряжение\n";
echo "разработчиков и администраторов гибкие и\n";
echo "эффективные средства безопасности, которые\n";
echo "условно делятся на две категории: средства\n";
echo "системного уровня и средства уровня\n";
echo "приложения.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b></font><font color=\"#000000\" face=\"Times New Roman\" size=\"3\"><b>Средства безопасности системного уровня</b></font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В РНР реализованы механизмы безопасности,\n";
echo "находящиеся под управлением\n";
echo "администраторов; при правильной настройке\n";
echo "РНР это обеспечивает максимальную свободу действий и безопасность. РНР\n";
echo "может работать в так называемом <i>безопасном</i></font><i><font FACE=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "режиме </font></i><font SIZE=\"3\" COLOR=\"#000000\">(safe\n";
echo "mode), который ограничивает возможности\n";
echo "применения РНР пользователями по ряду\n";
echo "важных показателей. Например, можно\n";
echo "ограничить максимальное время выполнения и\n";
echo "использование памяти (неконтролируемый\n";
echo "расход памяти отрицательно влияет на\n";
echo "быстродействие сервера). По аналогии с cgi-bin\n";
echo "администратор также может устанавливать\n";
echo "ограничения на каталоги, в которых\n";
echo "пользователь может просматривать и\n";
echo "исполнять сценарии РНР, а также\n";
echo "использовать сценарии РНР для просмотра\n";
echo "конфиденциальной информации на сервере (например,\n";
echo "файла passwd).\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\" COLOR=\"#000000\" size=\"3\">\n";
echo "Средства безопасности уровня приложения\n";
echo "</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В стандартный набор функций РНР входит\n";
echo "ряд надежных механизмов шифрования. РНР\n";
echo "также совместим с многими приложениями\n";
echo "независимых фирм, что позволяет легко\n";
echo "интегрировать его с защищенными\n";
echo "технологиями электронной коммерции (e-commerce).\n";
echo "Другое преимущество заключается в том, что\n";
echo "исходный текст сценариев РНР нельзя\n";
echo "просмотреть в браузере, поскольку сценарий\n";
echo "компилируется до его отправки по запросу\n";
echo "пользователя. Реализация РНР на стороне\n";
echo "сервера предотвращает похищение\n";
echo "нетривиальных сценариев пользователями,\n";
echo "знаний которых хватает хотя бы для\n";
echo "выполнения команды View Source.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Тема безопасности настолько важна, что ей\n";
echo "посвящена целая глава. За подробной\n";
echo "информацией о средствах безопасности РНР\n";
echo "обращайтесь к главе 16.\n";
echo "</font></p>\n";
echo "<p><A NAME=\"h\"></A><font color=\"#000000\" size=\"4\">Гибкость</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Поскольку РНР является встраиваемым (embedded)\n";
echo "языком, он отличается исключительной\n";
echo "гибкостью по отношению к потребностям\n";
echo "разработчика. Хотя РНР обычно\n";
echo "рекомендуется использовать в сочетании с\n";
echo "HTML, он с таким же успехом интегрируется и в\n";
echo "JavaScript, WML, XML и другие языки. Кроме того,\n";
echo "хорошо структурированные приложения РНР\n";
echo "легко расширяются по мере необходимости (впрочем,\n";
echo "это относится ко всем основным языкам\n";
echo "программирования).\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Нет проблем и с зависимостью от браузеров,\n";
echo "поскольку перед отправкой клиенту сценарии\n";
echo "РНР полностью компилируются на стороне\n";
echo "сервера. В сущности, сценарии РНР могут\n";
echo "передаваться любым устройствам с\n";
echo "браузерами, включая сотовые телефоны,\n";
echo "электронные записные книжки, пейджеры и\n";
echo "портативные компьютеры, не говоря уже о\n";
echo "традиционных PC. Программисты, занимающиеся\n";
echo "вспомога-тельными утилитами, могут\n";
echo "запускать РНР в режиме командной строки.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Поскольку РНР не содержит кода,\n";
echo "ориентированного на конкретный web-сервер,\n";
echo "пользователи не ограничиваются\n";
echo "определенными серверами (возможно,\n";
echo "незнакомыми для них). Apache, Microsoft IIS, Netscape\n";
echo "Enterprise Server, Stronghold и Zeus — РНР работает на всех\n";
echo "перечисленных серверах. Поскольку эти\n";
echo "серверы работают на разных платформах, РНР\n";
echo "в целом является платформенно-незави-симым\n";
echo "языком и существует на таких платформах,\n";
echo "как UNIX, Solaris, FreeBSD и Windows 95/98/NT.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Наконец, средства РНР позволяют\n";
echo "программисту работать с внешними\n";
echo "компонентами, такими как Enterprise Java Beans или\n";
echo "СОМ-объекты Win32. Благодаря\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "этим новым возможностям РНР занимает\n";
echo "достойное место среди современных\n";
echo "технологий и обеспечивает масштабирование\n";
echo "проектов до необходимых пределов.\n";
echo "</font></p>\n";
echo "<p><A NAME=\"i\"></A><font color=\"#000000\" size=\"4\">Бесплатное распространение</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Стратегия Open Source наделала немало шуму в\n";
echo "программной отрасли. Распространение\n";
echo "исходных текстов программ в массах оказало\n";
echo "несомненно благотворное влияние на многие\n";
echo "проекты, в первую очередь — Linux, хотя и успех\n";
echo "проекта Apache сильно подкрепил позиции\n";
echo "сторонников Open Source. Сказанное относится и к\n";
echo "истории создания РНР, поскольку поддержка\n";
echo "пользователей со всего мира оказалась\n";
echo "очень важным фактором в развитии проекта\n";
echo "РНР.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Принятие стратегии Open Source и бесплатное\n";
echo "распространение исходных текстов РНР\n";
echo "оказало неоценимую услугу пользователям.\n";
echo "Вдобавок, отзывчивое сообщество\n";
echo "пользователей РНР является своего рода «коллективной\n";
echo "службой поддержки», и в популярных\n";
echo "электронных конференциях можно найти\n";
echo "ответы даже на самые сложные вопросы.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В следующем разделе «Рекомендации\n";
echo "пользователей» приведены свидетельства\n";
echo "трех видных профессионалов в области web-разработок.\n";
echo "Из них становится ясно, почему они считают\n";
echo "РНР такой замечательной технологией.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><A NAME=\"j\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Рекомендации\n";
echo "пользователей</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "«Мы в течение долгого времени\n";
echo "поддерживали личные контакты с некоторыми\n";
echo "разработчиками РНР и вели с ними обширную\n";
echo "переписку. Когда у разработчиков РНР\n";
echo "возникали какие-то проблемы, относящиеся к\n";
echo "MySQL, мы всегда были готовы помочь им в поиске\n";
echo "решения. Кроме того, мы включили в MySQL\n";
echo "несколько новых возможностей лишь для того,\n";
echo "чтобы улучшить его интеграцию с РНР.\n";
echo "Результатом наших усилий стало то, что MySQL\n";
echo "превосходно работает с РНР, — и мы\n";
echo "позаботимся о том, чтобы это положение\n";
echo "сохранилось и в будущем!»\n";
echo "</font></p>\n";
echo "<p align=\"right\"><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Майкл «Монти» Видениус (Michael «Monty» Widenius),\n";
echo "</font></p>\n";
echo "<p align=\"right\"><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "разработчик MySQL\n";
echo "</font></p>\n";
echo "<p align=\"right\"><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "<a href=\"http://www.mysql.com\">http://www.mysql.com</a>\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "«Выбор РНР для реализации mp3.lycos.com был\n";
echo "обусловлен несколькими причинами. Главной\n";
echo "причиной стали сжатые сроки работы над\n";
echo "проектом — ведь РНР ускоряет процесс\n";
echo "разработки. Другой причиной была высокая\n";
echo "эффективность — мы перешли от 0 к 1,4\n";
echo "миллиона посещений в сутки, и РНР с этим\n";
echo "прекрасно справился. Третья причина\n";
echo "заключалась в том, что я твердо знал: если на\n";
echo "стадии тестирования с повышенной нагрузкой\n";
echo "в РНР обнаружатся какие-либо ошибки, я смогу\n";
echo "их самостоятельно исправить, поскольку РНР\n";
echo "распространяется вместе с исходными\n";
echo "текстами».\n";
echo "</font></p>\n";
echo "<p align=\"right\"><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Стиг Баккен (Stig Bakken),\n";
echo "</font></p>\n";
echo "<p align=\"right\"><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "FAST Search &amp; Transfer ASA\n";
echo "</font></p>\n";
echo "<p align=\"right\"><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "<a href=\"http://www.fast.no\">http://www.fast.no</a></font>\n";
echo "\n";
echo "</p>\n";
echo "\n";
echo "<p>\n";
echo "\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "«Я использовал РНР с первых дней, еще с\n";
echo "версии PHP/FI 1.x. Мне понравилось, что я могу\n";
echo "обрабатывать формы и настраивать страницы\n";
echo "«на ходу» при помощи такого простого языка.\n";
echo "Вместе с потребностями моей компании\n";
echo "развивался и РНР.\n";
echo "</font></p>\n";
echo "<p>\n";
echo "\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В наши дни РНР обладает исключительно\n";
echo "богатыми возможностями. Мы используем его\n";
echo "практически во всех создаваемых web-сайтах,\n";
echo "включая 32bit.com и DevShed.com. Мы даже\n";
echo "воспользовались им в Info West для реализации\n";
echo "службы поддержки, управления учетными\n";
echo "записями и отслеживания портов.\n";
echo "</font></p>\n";
echo "<p>\n";
echo "\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Эволюция РНР и признание его мировым\n";
echo "сообществом — классический пример\n";
echo "успешного ведения проекта с открытыми\n";
echo "исходными текстами. Широта взглядов\n";
echo "создателей, поддержка сообщества и хорошее\n";
echo "сопровождение кодовой базы привели РНР к\n";
echo "успеху, о котором многие коммерческие\n";
echo "проекты могут лишь мечтать. Я с оптимизмом\n";
echo "смотрю в будущее РНР и рекомендую каждому\n";
echo "web-разработчику попробовать его в деле.\n";
echo "Возможно, вы, как и я, уже не расстанетесь с\n";
echo "ним».\n";
echo "</font></p>\n";
echo "<p align=\"right\">\n";
echo "\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Рэнди Косби (Randy Cosby),\n";
echo "</font></p>\n";
echo "<p align=\"right\">\n";
echo "\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "президент nGenuity, Inc.\n";
echo "DevShed\n";
echo "</font></p>\n";
echo "<p align=\"right\"><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "<a href=\"http://www.devshed.com\">http://www.devshed.com</a>\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<b>\n";
echo "<p><A NAME=\"k\"></A><font color=\"#000000\" face=\"Times New Roman\" size=\"4\">Вводный пример</font></p>\n";
echo "</b><font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Пример, приведенный в листинге 1.1,\n";
echo "наглядно показывает, как легко РНР\n";
echo "интегрируется с HTML-кодом.\n";
echo "</font></p>\n";
echo "<p></font><font face=\"Times New Roman\" color=\"#000000\" size=\"3\"><i><b>Листинг 1.1.</b> Создание динамической\n";
echo "страницы РНР</i><font COLOR=\"#000000\">  &nbsp;\n";
echo "</font></font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;?\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "// Присвоить значения нескольким\n";
echo "переменным\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "$site_title = &quot;РНР Recipes&quot;;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "$bg_color = &quot;white&quot;;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "$user_name = &quot;Chef Luigi&quot;;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "?&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "&lt;html&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "&lt;head&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;title&gt;&lt;? print $site_title; ?&gt;&lt;/title&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;/head&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;body bgcolor=&quot;&lt;? print $bg color; ?&gt;&quot; &gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;?\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "// Вывести приветствие с датой и именем\n";
echo "пользователя. print &quot;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "РНР Recipes | &quot;.dateC'F d. Y&quot;).&quot; &lt;br&gt; Greetings,\n";
echo "$user_name! &lt;br&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "&quot;;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "?&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "&lt;/body&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "&lt;/html&gt;\n";
echo "</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "На рис. 1.1 показано, как выглядит сценарий\n";
echo "при выполнении в браузере.</font></p>\n";
echo "<p><img border=\"0\" src=\"1.1.jpg\" width=\"495\" height=\"339\"></p>\n";
echo "<p></font><b><font face=\"Times New Roman\"><font color=\"#000000\" size=\"3\"><i>Рис. 1.1.\n";
echo "</i> </font></font></b><i><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">Результаты\n";
echo "выполнения сценария в браузере</font></i></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Неплохо, правда? Я уверен, что читатель уже\n";
echo "перебирает в уме новые возможности. Но не\n";
echo "будем торопиться — возможно, вам еще\n";
echo "придется установить и настроить РНР на\n";
echo "своем компьютере. Этой теме посвящены\n";
echo "следующие разделы.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font><b>\n";
echo "<A NAME=\"l\"></A><font color=\"#000000\" face=\"Times New Roman\" size=\"4\">Загрузка РНР/Apache</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Прежде чем следовать дальше, я рекомендую\n";
echo "потратить немного времени на загрузку,\n";
echo "установку и настройку РНР и web-сервера на\n";
echo "вашем компьютере. Хотя РНР совместим с\n";
echo "разными web-серверами, я предполагаю, что вы\n";
echo "используете Apache — во-первых, это самый\n";
echo "популярный web-сервер на сегодняшний день, во-вторых,\n";
echo "он чаще всего работает с РНР. Впрочем, в\n";
echo "целом процессы установки для разных web-серверов\n";
echo "имеют много общего.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Поставку РНР можно загрузить с\n";
echo "официального сайта РНР или с любого из «зеркальных»\n";
echo "сайтов по всему миру. Самый свежий список «зеркальных»\n";
echo "сайтов находится по адресу <a href=\"http://www.php.net\">http://www.php.net</a>.\n";
echo "При\n";
echo "загрузке РНР можно выбрать один из двух\n";
echo "форматов:\n";
echo "</font></p>\n";
echo "<ul>\n";
echo "  <li> <font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo " исполняемый формат Win32;\n";
echo "</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "исходный текст.\n";
echo "</font></li>\n";
echo "</ul>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Исполняемый формат Win32 предназначен для\n";
echo "пользователей Windows 95/98/ NT/2000. Хотя исходный\n";
echo "текст можно откомпилировать и на платформе\n";
echo "Windows, для большинства пользователей это\n";
echo "необязательно. Впрочем, если вы настаиваете\n";
echo "на компиляции (кстати, в книге этот процесс\n";
echo "не рассматривается), вам понадобится\n";
echo "компилятор Visual C++ одной из последних версий.\n";
echo "За подробностями компиляции обращайтесь по\n";
echo "адресу http://www.php.net/ version4/win32build.php. Установка\n";
echo "исполняемых файлов Win32 описана далее в этой\n";
echo "главе.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Пользователям других систем придется\n";
echo "самостоятельно откомпилировать исходный\n";
echo "текст программы. Хотя многих новичков эта\n";
echo "перспектива приводит в ужас, на самом деле\n";
echo "это довольно просто. Возможно, вас\n";
echo "интересует, распространяется ли РНР в\n";
echo "формате RPM (RedHat Package Manager)? Да,\n";
echo "распространяется, хотя эти пакеты не\n";
echo "представлены на официальном сайте РНР. За\n";
echo "инструкциями и дополнительной информацией\n";
echo "о местонахождении различных поставок\n";
echo "обращайтесь к материалам электронных\n";
echo "конференций. Обобщенный процесс компиляции\n";
echo "рассматривается далее.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Зайдите на сайт http://www.php.net и загрузите с\n";
echo "него ту поставку, которая лучше всего\n";
echo "отвечает вашим потребностям. Время\n";
echo "загрузки зависит от типа и скорости\n";
echo "подключения. Кроме того, имеется\n";
echo "возможность получить документацию. Я\n";
echo "настоятельно рекомендую выбрать самую\n";
echo "новую версию.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p></b></font><i><font face=\"Times New Roman\" color=\"#000000\" size=\"3\">\n";
echo "<img border=\"0\" src=\"Sovet.gif\" align=left width=\"36\" height=\"35\">На\n";
echo "момент издания книги последней устойчиво\n";
echo "работающей версией был РНР 4.0.3. Конечно,\n";
echo "пакет РНР постоянно развивается, и номер\n";
echo "версии непременно изменится. Я рекомендую\n";
echo "загрузить самую свежую надежную версию\n";
echo "продукта.</font></i></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Если вы еще не установили сервер Apache, вам\n";
echo "также следует выбрать его последнюю версию.\n";
echo "Пакеты находятся в каталоге http://www.apache.org/dist/binaries,\n";
echo "содержащем подкаталоги для разных\n";
echo "операционных систем. Загрузите вариант,\n";
echo "соответствующий вашим потребностям.\n";
echo "Подробное описание настройки РНР для всех\n";
echo "существующих платформ и web-серверов выходит\n";
echo "за рамки этой книги, поэтому я уделю\n";
echo "основное внимание серверу Apache. Независимо\n";
echo "от того, какой web-сервер вы собираетесь\n";
echo "использовать, я рекомендую прочитать\n";
echo "дальнейшие разделы, посвященные настройке,\n";
echo "— вы получите некоторое представление о\n";
echo "тех общих проблемах, с которыми можете\n";
echo "столкнуться.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Установка новых программ нередко\n";
echo "превращается в непростое испытание для\n";
echo "новичков. Однако разработчики РНР\n";
echo "предприняли дополнительные усилия для того,\n";
echo "чтобы установка РНР проходила относительно\n";
echo "просто. В следующих разделах перечислены\n";
echo "действия, которые необходимо выполнить для\n";
echo "установки и настройки РНР в Win32 и на других\n";
echo "платформах.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><img border=\"0\" src=\"Prim.gif\" align=left width=\"36\" height=\"35\"></b></font><i><font face=\"Times New Roman\" color=\"#000000\" size=\"3\">В\n";
echo "дальнейших главах вы познакомитесь с\n";
echo "сервером баз данных MySQL, и на примере этого\n";
echo "популярного продукта будет\n";
echo "продемонстрирован процесс интеграции web-приложений\n";
echo "с базами данных. Чтобы\n";
echo "поэкспериментировать с этими примерами,\n";
echo "вам придется установить пакет MySQL (http://www.mysql.com).\n";
echo "MySQL, как и РНР, существует в версиях для Windows\n";
echo "и для других платформ. Хотя в документации\n";
echo "MySQL приведены подробные инструкции по\n";
echo "установке, возможно, вам стоит\n";
echo "предварительно просмотреть начало главы 11,\n";
echo "где приводится общая информация о сервере\n";
echo "баз данных MySQL.</font></i></p>\n";
echo "<b>\n";
echo "<p><A NAME=\"m\"></A><font color=\"#000000\" face=\"Times New Roman\" size=\"4\">Установка и настройка</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\"><font SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Предполагается, что к настоящему моменту\n";
echo "вы успешно загрузили РНР и Apache. Следующий\n";
echo "шаг — выбор способа установки. Для\n";
echo "компьютеров, не использующих систему Windows,\n";
echo "существует три варианта: двоичный файл CGI,\n";
echo "статический\n";
echo "модуль Apache и динамический модуль Apache.\n";
echo "Скорее всего, вы не захотите строить РНР в\n";
echo "виде двоичного файла CGI. Более того,\n";
echo "построение РНР в виде серверного модуля\n";
echo "имеет некоторые преимущества, поэтому я\n";
echo "уделю внимание построению РНР в виде\n";
echo "статического и динамического модуля.\n";
echo "Главное различие между этими двумя\n";
echo "вариантами заключается в том, что при любых\n";
echo "изменениях в статическом модуле РНР\n";
echo "придется заново компилировать и Apache, и РНР,\n";
echo "а изменения в динамическом модуле РНР\n";
echo "потребуют компиляции только РНР, без\n";
echo "сервера.\n";
echo "</font>\n";
echo "</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "На компьютерах с системой Windows РНР может\n";
echo "устанавливаться в виде либо двоичного\n";
echo "файла CGI, либо статического модуля Apache. На\n";
echo "этот раз я опишу построение двоичного файла\n";
echo "CGI, потому что пользователи Windows обычно\n";
echo "используют вместо Apache другие web-серверы (например,\n";
echo "Microsoft Internet Information Server или Microsoft Personal Web Server).\n";
echo "CGI-версия легко интегрируется с этими\n";
echo "серверами. Хотя описанный процесс\n";
echo "установки относится к РНР/Apache, установка\n";
echo "для перечисленных выше web-серверов\n";
echo "выполняется практически так же.\n";
echo "</font></p>\n";
echo "<b><u>\n";
echo "<p></u></b></font><i><font face=\"Times New Roman\" color=\"#000000\" size=\"3\"><img border=\"0\" src=\"Prim.gif\" align=left width=\"36\" height=\"35\">Как\n";
echo "говорилось ранее, РНР4 поддерживает\n";
echo "разнообразные web-серверы, в том числе AOL Server,\n";
echo "Netscape Enterprise Server, Microsoft IIS, Zeus и многие другие.\n";
echo "Впрочем, я ограничусь описанием установки\n";
echo "для сервера Apache. За подробными инструкциями\n";
echo "о том, как установить РНР для других\n";
echo "серверов, обращайтесь к документации РНР по\n";
echo "адресу <a href=\"http://www.php.net\">http://www.php.net</a>.</font></i></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><A NAME=\"n\"></A><font color=\"#000000\" size=\"4\">Системы, не входящие в семейство Windows</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Независимо от того, какой вариант был\n";
echo "выбран, установка начинается с распаковки\n";
echo "архивов. Для распаковки выполните два\n";
echo "простых действия:\n";
echo "</font>\n";
echo "</p>\n";
echo "<ol>\n";
echo "  <li><font face=\"Times New Roman\" size=\"3\" color=\"#000000\">Выполните следующие команды:\n";
echo "</font></li>\n";
echo "</font>\n";
echo "</ol>\n";
echo "<blockquote>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "gunzip apache_1.3.9.tar.gz\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "gunzip php-4.0.0.tar.gz\n";
echo "</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" size=\"3\" color=\"#000000\">\n";
echo "После завершения распаковки остаются\n";
echo "файлы с расширением *.tar.\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<ol start=2>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<li><font face=\"Times New Roman\" size=\"3\" color=\"#000000\">\n";
echo " Извлеките файлы поставки из архивов:\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo " tar -zxvf\n";
echo "apache_1.3.x.tar\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "tar -zxvf php-4.0.x.tar\n";
echo "</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" size=\"3\" color=\"#000000\">\n";
echo "С этого момента начинается основной\n";
echo "процесс установки.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\" COLOR=\"#000000\" size=\"3\">\n";
echo "Модуль Apache\n";
echo "</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Установка РНР в виде модуля Apache\n";
echo "выполняется довольно просто. Ниже подробно\n";
echo "описаны все необходимые действия:\n";
echo "</font></p>\n";
echo "<ol>\n";
echo "  <li> <font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo " Перейдите в каталог Apache:\n";
echo "</font></li>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">cd apache_1.3.x</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "  <li> \n";
echo "<font SIZE=\"3\" COLOR=\"#000000\">\n";
echo " Настройте Apache. Выберите путь по своему\n";
echo "усмотрению, но помните, что за ним </font><i><font FACE=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">не\n";
echo "должна </font></i><font SIZE=\"3\" COLOR=\"#000000\">следовать\n";
echo "косая черта:\n";
echo "</font></li>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">./configure -prefix=[путь]</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "  <li> \n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo " Перейдите в каталог РНР; настройте,\n";
echo "соберите и установите поставку. Параметр -with-config-file-path\n";
echo "задает каталог, в котором будет находиться\n";
echo "файл конфигурации РНР. Обычно этот файл\n";
echo "находится в каталоге /usr/local/lib, но вы можете\n";
echo "выбрать другой каталог по своему\n";
echo "усмотрению:\n";
echo "</font></li>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">./configure -with-apache=../apache_1.3.x\n";
echo "-with-config-file-path=[путь]</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">make</font></p>\n";
echo "<p><font face=\"Courier New\" COLOR=\"#000000\" size=\"3\">\n";
echo "make install\n";
echo "</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "  <li> \n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo " Вернитесь в каталог Apache. Теперь вы\n";
echo "можете изменить конфигурацию, собрать и\n";
echo "установить Apache. Параметр -other-configuration-options\n";
echo "относится к любым специальным параметрам\n";
echo "конфигурации, которые вы хотели бы передать\n";
echo "web-серверу Apache. Данная тема выходит за рамки\n";
echo "книги. Полное описание параметров\n";
echo "приведено в документации Apache:\n";
echo "</font></li>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">./configure -activate-module=src/modules/php4/libphp4.a</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">-other-configuration-options</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">make</font></p>\n";
echo "<p><font face=\"Courier New\" COLOR=\"#000000\" size=\"3\">\n";
echo "make install\n";
echo "</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "  <li> \n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo " На последнем этапе происходит\n";
echo "редактирование файла Apache httpd.conf. Одни\n";
echo "модификации относятся к Apache, другие\n";
echo "необходимы для того, чтобы сценарии РНР\n";
echo "распознавались и передавались web-серверу.\n";
echo "Сначала найдите такую строку:\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "<p>\n";
echo "<font face=\"Courier New\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "  ServerName new.host.name\n";
echo "</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Приведите ее к следующему\n";
echo "виду:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p>\n";
echo "<font face=\"Courier New\" size=\"3\" COLOR=\"#000000\">\n";
echo "  ServerName localhost\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Courier New\" size=\"3\" COLOR=\"#000000\">\n";
echo "Затем найдите строки\n";
echo "</font>\n";
echo "</p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">#AddType application/x-httpd-php\n";
echo ".php .php4</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">#AddType application/x-httpd-php-source\n";
echo ".php .phps</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Чтобы файлы с поддержкой РНР правильно\n";
echo "работали на сервере, эти строки необходимо\n";
echo "раскомментировать. Для этого достаточно\n";
echo "удалить знак фунта (#) в начале каждой строки.\n";
echo "Сохраните файл и поднимитесь в иерархии\n";
echo "каталогов на один уровень вверх. Запустите\n";
echo "сервер Apache следующей командой:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">./bin/apachectl start</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Voila! PHP и Apache готовы к работе. Для проверки\n";
echo "сохраните приведенный ниже фрагмент в\n";
echo "файле phpinfo.php в корневом каталоге документов\n";
echo "Apache — каталоге htdocs, находящемся в\n";
echo "установочном каталоге Apache:\n";
echo "</font>\n";
echo "</p>\n";
echo "<p><font face=\"Courier New\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "&lt;?\n";
echo "</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">php info();</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">?&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Откройте файл в браузере на сервере. В\n";
echo "окне появляется длинный перечень сведений\n";
echo "о конфигурации РНР. Вы успешно установили\n";
echo "РНР в виде модуля Apache.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\" COLOR=\"#000000\" size=\"3\">\n";
echo "Динамический модуль Apache\n";
echo "</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Динамические модули удобны тем, что они\n";
echo "позволяют обновлять поставку РНР без\n";
echo "перекомпиляции web-сервера. Apache\n";
echo "рассматривает поддержку РНР как один\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "из своих многочисленных модулей вроде\n";
echo "ModuleRewrite или ModuleSpelling. Этот вариант особенно\n";
echo "хорош в ситуациях, когда в РНР позднее будет\n";
echo "добавляться поддержка новых возможностей\n";
echo "— например, шифрования. Все, что вам\n";
echo "придется сделать — переконфигурировать/откомпилировать\n";
echo "РНР с поддержкой шифрования, и вы сможете\n";
echo "немедленно использовать новую возможность\n";
echo "в web-приложениях. Процесс установки описан\n";
echo "ниже:\n";
echo "</font></p>\n";
echo "<ol>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Перейдите в каталог Apache:\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "  <p><font color=\"#000000\" face=\"Courier New\" size=\"3\">cd apache_1.3.x</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<ol start=2>\n";
echo "  <li>\n";
echo "<font SIZE=\"3\" COLOR=\"#000000\">Настройте Apache. Выберите путь по своему\n";
echo "усмотрению, но помните, что за ним </font><i><font FACE=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">не\n";
echo "должна </font></i><font SIZE=\"3\" COLOR=\"#000000\">следовать\n";
echo "косая черта. Параметр -other-configuration-options\n";
echo "относится к любым специальным параметрам\n";
echo "конфигурации, которые вы хотели бы передать\n";
echo "web-серверу Apache. Данная тема выходит за рамки\n";
echo "книги. Полное описание параметров\n";
echo "приведено в документации Apache.\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "  <p><font color=\"#000000\" face=\"Courier New\" size=\"3\">./configure -prefix=[путь]\n";
echo "-enable-module=so -other-configuration-options</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<ol start=3>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Соберите сервер Apache. После ввода команды\n";
echo "make на экран выводится серия сообщений:\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "  <p><font color=\"#000000\" size=\"3\" face=\"Courier New\">make</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<ol start=4>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Установите сервер Apache. После ввода\n";
echo "команды make install на экран выводится\n";
echo "следующая серия сообщений. После успешного\n";
echo "завершения установки на экране появляется\n";
echo "соответствующее сообщение:\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "  <p><font color=\"#000000\" face=\"Courier New\" size=\"3\">make install</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<ol start=5>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Если предыдущие действия прошли без\n";
echo "ошибок, можно переходить к редактированию\n";
echo "файла httpd.conf. Этот файл находится в\n";
echo "подкаталоге conf каталога, указанного на шаге\n";
echo "2. Откройте файл в текстовом редакторе и\n";
echo "найдите строку\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "<blockquote>\n";
echo "  <p>\n";
echo "</font>\n";
echo "<font face=\"Courier New\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "ServerName new.host.name\n";
echo "</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Приведите ее к следующему\n";
echo "виду:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p>\n";
echo "<font face=\"Courier New\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "ServerName local host\n";
echo "</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<ol start=6>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Перейдите в тот каталог, где находится\n";
echo "пакет РНР. Настройте, соберите и установите\n";
echo "РНР. В параметрах указывается путь к\n";
echo "каталогу, содержащему файл apxs, —\n";
echo "подкаталогу bin каталога, путь к которому был\n";
echo "указан на шаге 2:\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "  <p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "./configure -with-apxs=[путь/k/apxs]\n";
echo "</font></p>\n";
echo "  <p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "make\n";
echo "</font></p>\n";
echo "  <p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "make install\n";
echo "</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<ol start=7>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Откройте файл Apache httpd.conf для очередной\n";
echo "модификации. Для обеспечения правильного\n";
echo "лексического анализа входящих запросов на\n";
echo "файлы с поддержкой РНР расширение должно\n";
echo "совпадать с одним из расширений, указанных\n";
echo "в файле конфигурации сервера Apache, httpd.conf.\n";
echo "Файл содержит параметры, которые могут\n";
echo "изменяться по усмотрению администратора;\n";
echo "некоторые из них имеют прямое отношение к\n";
echo "РНР. Откройте файл httpd.conf в своем текстовом\n";
echo "редакторе. В конце файла присутствуют две\n";
echo "строки следующего вида:\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "  <p><font color=\"#000000\" size=\"3\" face=\"Courier New\">#AddType application/x-httpd-php\n";
echo "  .php .php4</font></p>\n";
echo "  <p><font color=\"#000000\" size=\"3\" face=\"Courier New\">#AddType application/x-httpd-php-source .php .phps</font></p>\n";
echo "</blockquote>\n";
echo "<ol start=8>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Чтобы файлы с поддержкой РНР правильно\n";
echo "работали на сервере, эти строки необходимо\n";
echo "раскомментировать. Для этого следует\n";
echo "удалить'знак фунта (#) в начале каждой строки.\n";
echo "</font>\n";
echo "  </li>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Сохраните файл и перейдите на один\n";
echo "уровень вверх в иерархии каталогов (командой\n";
echo "cd). Запустите Apache следующей командой:\n";
echo "</font>\n";
echo "</li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "<p><font face=\"Courier New\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "./bin/apachectl start\n";
echo "</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Voila! РНР и Apache готовы к работе.\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Для проверки сохраните приведенный ниже\n";
echo "фрагмент в файле phpinfo.php в корневом каталоге\n";
echo "документов Apache — каталоге htdocs, находящемся\n";
echo "в установочном каталоге Apache:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;?\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "php_info():&nbsp;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo " ?&gt;\n";
echo "</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Откройте файл в браузере на сервере. В\n";
echo "окне появляется длинный перечень сведений\n";
echo "о конфигурации РНР. Вы успешно установили\n";
echo "РНР в виде динамического модуля Apache.\n";
echo "</font></p>\n";
echo "<p><A NAME=\"o\"></A><font color=\"#000000\" size=\"4\">Установка в Windows 95/98/NT</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Если вам когда-нибудь приходилось\n";
echo "устанавливать новые приложения в\n";
echo "операционной системе Windows, вероятно, это не\n";
echo "вызывало у вас особых трудностей. Вы\n";
echo "щелкаете на нескольких кнопках, отвечаете\n";
echo "на несколько вопросов — и все готово. Так же\n";
echo "обстоит дело и с установкой Apache и РНР на\n";
echo "компьютерах с системой Windows.</font></p>\n";
echo "<ol>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Дважды щелкните на значке исполняемого\n";
echo "файла Apache. Запускается процесс установки, и\n";
echo "на экране появляется начальное окно\n";
echo "программ мастера (wizard) установки.\n";
echo "Внимательно прочитайте текст\n";
echo "лицензионного соглашения и подтвердите его.</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Мастер запрашивает каталог для\n";
echo "установки и предлагает вариант по\n";
echo "умолчанию (C:\Program Files\Apache Group\Apache). Возможно,\n";
echo "вам захочется сократить его до C:\Apache —\n";
echo "решайте сами.</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Затем вам будет предложено указать имя,\n";
echo "под которым программа будет находиться в\n";
echo "меню Пуск (Start). Введите имя по своему\n";
echo "усмотрению или подтвердите предложенный\n";
echo "вариант.</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Следующий вопрос относится к типу\n";
echo "установки. Выберите вариант Typical (Стандартная\n";
echo "установка). После того как решение будет\n";
echo "принято, выполняется установка.</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">На следующем шаге редактируется файл\n";
echo "httpd.conf, находящийся в подкаталоге conf\n";
echo "каталога, указанного на шаге 2. Откройте\n";
echo "файл в текстовом редакторе и найдите строку\n";
echo "ServerAdmin yourname@yoursite.c</font></font>om</li>\n";
echo "</ol>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<blockquote>\n";
echo "  <p><font SIZE=\"3\" COLOR=\"#000000\">Замените yourname@yoursite.com правильными данными.\n";
echo "Затем укажите правильное имя сервера (если</font><font size=\"3\"><font COLOR=\"#000000\">\n";
echo "его нет, воспользуйтесь именем localhost):</font></font></p>\n";
echo "</font>\n";
echo "<p><font face=\"Courier New\"><font color=\"#000000\" size=\"3\">S</font><font size=\"3\" COLOR=\"#000000\">erverName localhost\n";
echo "</font></font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<ol start=6>\n";
echo "  <li ><font face=\"Times New Roman\" size=\"3\" COLOR=\"#000000\">Запустите\n";
echo "    Apache и убедитесь в том, что все\n";
echo "работает правильно. Конкретные</font></font> <font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "действия зависят от того, в какой системе\n";
echo "вы работаете.\n";
echo "</font>\n";
echo "</li>\n";
echo "</ol>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Если вы используете Windows NT, выберите в меню\n";
echo "Пуск (Start) команду Install Apache as Service (NT Only). Затем\n";
echo "вызовите панель управления, откройте окно\n";
echo "Службы (Services), выберите Apache и щелкните на\n";
echo "кнопке Пуск (Start). Apache запускается и будет\n";
echo "запускаться автоматически при каждой\n";
echo "последующей загрузке системы.\n";
echo "</font>\n";
echo "</p>\n";
echo "<ol start=7>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Запустите браузер, установленный на\n";
echo "сервере, и введите адрес http: /local host/. В окне\n";
echo "открывается страница с сообщением о том,\n";
echo "что установка была выполнена успешно.\n";
echo "</font>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Следующий этап — установка РНР.\n";
echo "Перейдите в каталог, где находится пакет\n";
echo "РНР, и распакуйте его в произвольный\n";
echo "каталог.\n";
echo "</font>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Перейдите в каталог, в который были\n";
echo "помещены распакованные файлы, и найдите в\n";
echo "нем файл php.ini-dist. Переименуйте его в php.ini и\n";
echo "переместите в каталог C:\Windows.\n";
echo "</font>\n";
echo "  </li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Вернитесь в каталог РНР и найдите два\n";
echo "других файла, php4ts.dll и Mscvrt.dll. Поместите эти\n";
echo "файлы в каталог C:\Windows\System\. Возможно, файл\n";
echo "Mscvrt.dll уже существует — если вам будет\n";
echo "предложено его перезаписать, не\n";
echo "соглашайтесь.\n";
echo "</font>\n";
echo "  </li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Вернитесь к файлу Apache http.conf и откройте\n";
echo "его в текстовом редакторе. Необходимо\n";
echo "внести еще несколько изменений. Найдите\n";
echo "строку\n";
echo "</font>\n";
echo "  </li>\n";
echo "</ol>\n";
echo "</font>\n";
echo "<blockquote>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">ScriptAlias /cgi-bin/ &quot;C:/Apache/cgi-bin/&quot;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Непосредственно под этой строкой введите\n";
echo "следующую:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">ScriptAlias /php4/ &quot;C:/php4/&quot;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Найдите секцию AddType. Вы увидите две\n";
echo "закомментированные строки:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">#AddType application/x-httpd-php3. phtml</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">#AddType application/x-httpd-php3-source\n";
echo ".phps</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Непосредственно под этими строками\n";
echo "добавьте следующие:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">AddType application/x-httpd-php\n";
echo ".phtml .php&nbsp;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\"> AddType application/x-httpd-php-source .phps</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Прокрутите содержимое файла и найдите\n";
echo "следующий закомментированный фрагмент:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">#</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\"># Action lets you define media types that will execute a script whenever</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\"># a matching file is called. This eliminates the need for repeated URL</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\"># pathnames for oft-used CGI file\n";
echo "processors.</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\"># Format: Action media/type\n";
echo "/cgi-script/location</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\"># Format: Action handler-name\n";
echo "/cgi-script/location&nbsp;</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\"> #</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Добавьте под этим фрагментом следующую\n";
echo "строку:\n";
echo "</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">Action application/x-httpd-php\n";
echo "/php4/php.exe</font></p>\n";
echo "</blockquote>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<ol start=12>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">РНР и Apache готовы к работе.\n";
echo "</font></li>\n";
echo "</ol>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Для проверки сохраните приведенный ниже\n";
echo "фрагмент в файле phpinfo.php в корневом каталоге\n";
echo "документов Apache — каталоге htdocs. Он находится\n";
echo "в том каталоге, который был указан на шаге 2:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p>\n";
echo "<font face=\"Courier New\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "&lt;?\n";
echo "</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">php_info();</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">?&gt;</font></p>\n";
echo "<p><i><font face=\"Times New Roman\" color=\"#000000\" size=\"3\"> <img border=\"0\" src=\"Attent.gif\" align=left width=\"36\" height=\"35\">Хотя\n";
echo "при успешном завершении действий,\n";
echo "описанных выше, вы сможете использовать web-сервер\n";
echo "и РНР для тестирования, это еще не значит,\n";
echo "что ваш web-сервер будет доступен из World Wide Web.\n";
echo "За информацией по этому вопросу\n";
echo "обращайтесь&nbsp; на официальный сайт Apache (<a href=\"http://www.apache.org\">http://www.apache.org</a>).\n";
echo "Более того, хотя описанная процедура\n";
echo "позволяет работать с пакетом РНР, вероятно,\n";
echo "вы захотите изменить конфигурацию РНР так,\n";
echo "чтобы она лучше соответствовала вашим\n";
echo "потребностям. Эта тема рассматривается в\n";
echo "следующем разделе «Конфигурация РНР».</font></i></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Откройте файл в браузере на сервере — в\n";
echo "окне появляется длинный перечень сведений\n";
echo "о конфигурации РНР.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font><b>\n";
echo "<A NAME=\"p\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Конфигурация РНР</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "РНР будет правильно работать и при\n";
echo "конфигурации, выбранной по умолчанию,\n";
echo "однако вы можете внести некоторые\n";
echo "изменения, чтобы работа пакета лучше\n";
echo "соответствовала вашим целям. Все параметры\n";
echo "конфигурации находятся в файле php.ini,\n";
echo "который по умолчанию копируется в каталог /usr/local/lib/\n";
echo "в процессе установки.\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Независимо от платформы и web-сервера,\n";
echo "используемого в сочетании с РНР, файл php.ini\n";
echo "содержит одинаковый набор стандартных\n";
echo "параметров, позволяющих управлять важными\n";
echo "аспектами работы РНР. Этот файл содержит\n";
echo "все параметры, определяющие поведение\n";
echo "пакета при выполнении сценария РНР.\n";
echo "Содержимое файла php.ini читается при запуске\n";
echo "РНР.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><img border=\"0\" src=\"Prim.gif\" align=left width=\"36\" height=\"35\"></b></font><i><font face=\"Times New Roman\" color=\"#000000\" size=\"3\">В\n";
echo "версии 3.0 файл конфигурации назывался php3.ini,\n";
echo "но в версии 4.0 ему было присвоено имя php.ini.</font></i></p>\n";
echo "<p>&nbsp;</p>\n";
echo "<p><A NAME=\"q\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Общие параметры конфигурации</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Подробное описание всех конфигурационных\n";
echo "параметров выходит за рамки этой книги, но\n";
echo "некоторые директивы используются особенно\n";
echo "часто и заслуживают отдельного упоминания.\n";
echo "Другие параметры упоминаются в\n";
echo "соответствующих местах следующих глав.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\" COLOR=\"#000000\" size=\"3\">\n";
echo "short_open_tag [on | off]\n";
echo "</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр short_open_tab [on | off] определяет\n";
echo "возможность использования коротких тегов\n";
echo "&lt;?...?&gt; наряду со стандартными тегами.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">asp_tags [on | off]</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр asp_tags [on | off] определяет\n";
echo "возможность использования тегов в стиле ASP\n";
echo "наряду со стандартными тегами. При\n";
echo "использовании тегов в стиле ASP фрагменты\n";
echo "кода РНР оформляются следующим образом:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;%</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">print &quot;This is РНР code.&quot;;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">%&gt;</font></p>\n";
echo "<b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">precision [integer]</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр precision [integer] задает количество\n";
echo "значащих цифр, отображаемых в вещественных\n";
echo "числах.\n";
echo "</font></p>\n";
echo "</font><b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">safe_mode [on | off]</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Безопасный режим особенно удобен в случае,\n";
echo "если в вашей системе работают несколько\n";
echo "пользователей. Включение безопасного\n";
echo "режима гарантирует, что пользователь не\n";
echo "сможет применить сценарий РНР для\n";
echo "получения доступа к другому файлу в системе\n";
echo "— например, файлу passwd на компьютере Linux.\n";
echo "Параметр safe_mode работает только в CGI-версии\n";
echo "РНР. За дополнительной информацией по этой\n";
echo "теме обращайтесь к главе 16.\n";
echo "</font></p>\n";
echo "</font><b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">max_execution_time [integer]</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр max_execution_time [integer] определяет\n";
echo "максимальную продолжительность выполнения\n";
echo "сценариев РНР в секундах. Такое ограничение\n";
echo "предотвращает поглощение ценных системных\n";
echo "ресурсов сценариями, содержащими ошибки.\n";
echo "</font></p>\n";
echo "</font><b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">error_reporting [1-8]</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр error_reporting [1-8] определяет уровень\n";
echo "выдачи сообщений об ошибках в РНР. Чем выше\n";
echo "значение, тем «чувствительнее» РНР\n";
echo "реагирует на ошибки.\n";
echo "</font>\n";
echo "</p>\n";
echo "<table border=\"1\" width=\"350\" cellspacing=\"0\" cellpadding=\"0\">\n";
echo "  <tr>\n";
echo "    <td width=\"23%\" align=\"center\">\n";
echo "<b><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Значение\n";
echo "</font></b>\n";
echo "    </td>\n";
echo "    <td width=\"77%\" align=\"center\">\n";
echo "<b><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Чувствительность\n";
echo "</font></b>\n";
echo "    </td>\n";
echo "  </tr>\n";
echo "</font>\n";
echo "<tr>\n";
echo "  <td width=\"23%\" align=\"center\"><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "1\n";
echo "</font></td>\n";
echo "  <td width=\"77%\"><font color=\"#000000\" size=\"3\" face=\"Times New Roman\"> Обычные ошибки</font></td>\n";
echo "</tr>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<tr>\n";
echo "  <td width=\"23%\" align=\"center\"><font face=\"Times New Roman\" size=\"3\" COLOR=\"#000000\">\n";
echo "2\n";
echo "</font></td>\n";
echo "  <td width=\"77%\"><font face=\"Times New Roman\" size=\"3\" COLOR=\"#000000\">Обычные предупреждения\n";
echo "</font></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "  <td width=\"23%\" align=\"center\"><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">4</font></td>\n";
echo "  <td width=\"77%\"><font face=\"Times New Roman\" size=\"3\" COLOR=\"#000000\">Ошибки лексического анализатора\n";
echo "</font></td>\n";
echo "</tr>\n";
echo "<tr>\n";
echo "  <td width=\"23%\" align=\"center\"><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">8</font></td>\n";
echo "  <td width=\"77%\"><font face=\"Times New Roman\" size=\"3\" COLOR=\"#000000\">Замечания\n";
echo "</font></td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "<b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">display_errors [on | off]</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр display_errors[on | off] управляет выводом\n";
echo "информации об ошибках в браузере.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">log_errors</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр log_errors определяет, следует ли\n";
echo "регистрировать ошибки в файле. При\n";
echo "включении параметра log_errors файл, в котором\n";
echo "регистрируются ошибки, назначается при\n";
echo "помощи параметра error_log.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">error_log [filename]</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр error_log определяет файл, в котором\n";
echo "регистрируются ошибки при включенном\n";
echo "параметре log_errors.\n";
echo "</font></p>\n";
echo "</font><b>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">magic_quotes_gpc</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "При активизации параметра magic_quotes_gpc все\n";
echo "специальные символы, содержащиеся в\n";
echo "пользовательских данных или в базе,\n";
echo "автоматически экранируются обратной косой\n";
echo "чертой. Кстати, сокращение gрс означает «get/post/cookie».\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Лично я считаю, что параметр magic_quotes_gpc\n";
echo "эффективнее отключить и использовать явное\n";
echo "экранирование специальных символов. Какой\n";
echo "бы способ вы ни выбрали, любые компромиссы\n";
echo "приведут к порче данных. Если параметр\n";
echo "magic_quotes_gpc\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "включен, никогда не экранируйте\n";
echo "специальные символы обратной косой чертой;\n";
echo "в противном случае не забывайте делать это\n";
echo "всегда.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\" COLOR=\"#000000\" size=\"3\">\n";
echo "track_vars\n";
echo "</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Параметр track_vars включает отслеживание\n";
echo "нескольких важных массивов сеансовых\n";
echo "переменных, в том числе $HTTP_GET_VARS[], $HTTP_POST_VARS[],\n";
echo "$HTTP_POST_FILES, $HTTP_COOKIE_VARS[], $HTTP_ENV_VARS[] и $HTTP_SERVER_VARS[].\n";
echo "Эти массивы подробно описаны в главе 13.\n";
echo "</font></p>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Помните, что кроме перечисленных\n";
echo "параметров существует множество других.\n";
echo "Выше перечислены лишь те параметры, которые\n";
echo "часто применяются большинством\n";
echo "пользователей. Многие параметры будут\n";
echo "упоминаться в последующих главах.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font><b>\n";
echo "<A NAME=\"r\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Основные конструкции РНР</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Прежде чем переходить к изложению\n";
echo "основного материала, занимающего\n";
echo "оставшуюся часть книги, я представлю\n";
echo "несколько вспомогательных концепций,\n";
echo "относящихся к РНР.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font>\n";
echo "<A NAME=\"s\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Переход в РНР</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Механизм лексического анализа должен как-то\n";
echo "отличать код РНР от других элементов\n";
echo "страницы. Идентификация кода РНР\n";
echo "называется «переходом в РНР» (escaping to РНР).\n";
echo "Существуют четыре варианта оформления\n";
echo "перехода в РНР:\n";
echo "</font></p>\n";
echo "<ul>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "стандартные теги;\n";
echo "</font></li>\n";
echo "  <li>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "короткие теги;\n";
echo "</font></li>\n";
echo "  <li><font color=\"#000000\" size=\"3\">\n";
echo "теги script;</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "теги в стиле ASP.\n";
echo "</font></li>\n";
echo "</ul>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font><b>\n";
echo "<font face=\"Times New Roman\" color=\"#000000\" size=\"3\">Стандартные теги</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Стандартные теги используются\n";
echo "программистами РНР чаще остальных способов,\n";
echo "что объясняется наглядностью и удобством\n";
echo "этой формы записи:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">\n";
echo "&lt;?php print &quot;Welcome to the world of PHP!&quot;: ?&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "У стандартных тегов есть еще одно\n";
echo "дополнительное преимущество: за\n";
echo "открывающей конструкцией &lt;? следуют\n";
echo "символы php, однозначно определяющие тип\n";
echo "дальнейшего кода. Это удобно при\n";
echo "использовании в одной странице нескольких\n";
echo "технологий — таких, как JavaScript, серверные\n";
echo "включения и РНР. Весь текст, расположенный\n";
echo "до закрывающего тега ?&gt;, интерпретируется\n";
echo "как код РНР.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font><b>\n";
echo "<font color=\"#000000\" size=\"3\" face=\"Times New Roman\">Короткие теги</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Короткие теги обеспечивают наиболее\n";
echo "компактную запись для перехода в РНР:\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "&lt;? print\n";
echo "&quot;Welcome to the world of PHP!&quot;; ?&gt;\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "По умолчанию короткие теги не\n";
echo "используются, их нужно специально\n";
echo "активизировать. Это можно сделать двумя\n";
echo "способами:\n";
echo "</font></p>\n";
echo "<ul>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">указать ключ -enable-short-tags при компиляции\n";
echo "РНР;\n";
echo "</font></li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">включить параметр short_open_tag в файл php.ini.\n";
echo "</font></li>\n";
echo "</ul>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font><b>\n";
echo "<font color=\"#000000\" size=\"3\" face=\"Times New Roman\">Теги script</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Некоторые текстовые редакторы ошибочно\n";
echo "принимают код РНР за код HTML (то есть\n";
echo "визуально отображаемый текст), что нарушает\n";
echo "работу над web-страницей. Проблема решается\n";
echo "использованием тегов script:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">&lt;script language=&quot;php&quot;&gt;</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">&lt;?php print &quot;Welcome to the world of PHP!&quot;; ?&gt;</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">&lt;/script&gt;</font></p>\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\" color=\"#000000\" size=\"3\">Теги в стиле ASP</font></p>\n";
echo "</b>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Четвертый и последний способ оформления\n";
echo "внедренного кода РНР — теги в стиле ASP (Active\n";
echo "Server Page). Они похожи на короткие теги,\n";
echo "описанные выше, однако вместо\n";
echo "вопросительного знака используется знак\n";
echo "процента (%):\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;%php print &quot;Welcome to the world of PHP!&quot;; %&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "У тегов в стиле ASP есть одна особенность,\n";
echo "делающая запись более компактной. Во\n";
echo "внедренный код РНР не обязательно включать\n";
echo "команду print — знак равенства (=),\n";
echo "расположенный сразу же после открывающего\n";
echo "тега в стиле ASP, приказывает лексическому\n";
echo "механизму РНР вывести значение указанной\n";
echo "переменной:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font face=\"Courier New\" COLOR=\"#000000\">\n";
echo "&lt;%=$variable %&gt;\n";
echo "</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Этот удобный стиль позволяет\n";
echo "использовать в страницах фрагменты вида\n";
echo "</font>\n";
echo "</p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;%</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">// Присвоить значение переменной $recipe</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">$recipe = &quot;Lasagna&quot;:</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">%&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">Luigi's favorite recipe is &lt;%=$recipe;%&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Этот фрагмент содержит два разных\n";
echo "сценария РНР. В первом сценарии переменной $recipe\n";
echo "присваивается значение &quot;Lasagna&quot;. Позднее,\n";
echo "когда потребуется вывес</font><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">ти значение $гесiре, специально для этой\n";
echo "цели используются теги в стиле ASP. Кстати,\n";
echo "такая возможность существует и для\n";
echo "коротких тегов (&lt;?...?&gt;).\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font>\n";
echo "<A NAME=\"t\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Внедрение HTML в код РНР</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Одной из самых замечательных\n";
echo "особенностей HTML является простота\n";
echo "использования в сочетании с другими\n";
echo "языками — например, HTML и JavaScript (см. листинг\n";
echo "1.2).\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p></b></font><b><font face=\"Times New Roman\"><font color=\"#000000\" size=\"3\"><i>Листинг 1.2.\n";
echo "</i>\n";
echo "</font></font></b><i><font color=\"#000000\" size=\"3\">Вывод\n";
echo "кода HTML средствами РНР</font></i></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">&lt;html&gt;</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">&lt;head&gt;</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">&lt;title&gt;Basic PHP/HTML integration&lt;/title&gt;</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">&lt;/head&gt;</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">&lt;body&gt;</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">&lt;?</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">// Обратите внимание на присутствие тегов\n";
echo "HTML в команде print.</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">print &quot;&lt;h3&gt;PHP/HTML integration is cool.&lt;/h3&gt;&quot;;</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">?&gt;</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">&lt;/body&gt;</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">&lt;/html&gt;</font></p>\n";
echo "<p><img border=\"0\" src=\"1.2.jpg\" width=\"495\" height=\"25\"></p>\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\"><font color=\"#000000\" size=\"3\"><i>Рис. 1.2. </i> </font></font></b><i><font face=\"Times New Roman\" color=\"#000000\" size=\"3\">Форматирование\n";
echo "даты с использованием функции РНР date()</font></i></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В листинге 1.2 показано, как код HTML\n";
echo "интегрируется прямо в команды РНР. В данном\n";
echo "примере в код РНР включаются теги заголовка\n";
echo "третьего уровня (&lt;h3&gt;...&lt;/h3&gt;). В итоговом\n";
echo "документе эти теги ничем не отличаются от\n";
echo "обычного кода HTML.\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В листинге 1.3 продемонстрировано\n";
echo "включение динамической информации в web-страницу\n";
echo "на примере вывода текущей даты в заголовке\n";
echo "окна (рис. 1.2).\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p></b></font><b><font face=\"Times New Roman\"><font color=\"#000000\" size=\"3\"><i>Листинг 1.3.\n";
echo "</i>\n";
echo "</font></font></b><i><font face=\"Times New Roman\" color=\"#000000\" size=\"3\">Динамический\n";
echo "вывод даты</font></i></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">&lt;title&gt;PHP Recipes | &lt;? print (date(&quot;F d, Y&quot;)); ?&gt;&lt;/title&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Простая функция РНР date() форматирует дату\n";
echo "одним из нескольких стандартных способов.\n";
echo "Отформатированная дата вставляется в\n";
echo "заголовок окна.\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "РНР также позволяет изменять формат\n";
echo "конструкций HTML — для этого соответствующая\n";
echo "характеристика тега присваивается\n";
echo "переменной, вставляемой в файл. В листинге\n";
echo "1.4 эта возможность продемонстрирована на\n";
echo "примере присваивания характеристики\n";
echo "шрифта (h3) переменной $big_font и ее\n";
echo "последующего использования при выводе\n";
echo "текста.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p></b></font><b><font face=\"Times New Roman\"><font color=\"#000000\" size=\"3\"><i>Листинг 1.4.\n";
echo "</i>\n";
echo "</font></font></b><i><font color=\"#000000\" size=\"3\" face=\"Times New Roman\">Динамические\n";
echo "теги HTML</font></i></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;html&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;head&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;title&gt;PHP Recipes | &lt;? print (date(&quot;F\n";
echo "d, Y&quot;)); ?&gt;&lt;/title&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;/head&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;?</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">$big_font = &quot;h3&quot;;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">?&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;body&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;? print &quot;&lt;$big_font&gt;PHP Recipes&lt;/$big_font&gt;&quot;; ?&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;/body&gt;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&lt;/html&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Листинг 1.4 представляет собой\n";
echo "разновидность листинга 1.3 — на этот раз тег\n";
echo "заголовка (&lt;h3&gt;...&lt;/h3&gt;) сначала\n";
echo "присваивается переменной, а затем эта\n";
echo "переменная используется в команде print. В\n";
echo "итоговом документе эти теги ничем не\n";
echo "отличаются от обычного кода HTML.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font>\n";
echo "<A NAME=\"u\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Включение нескольких сценариев РНР</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Для обеспечения необходимой гибкости при\n";
echo "построении динамических web-приложений\n";
echo "можно внедрить в страницу несколько\n";
echo "сценариев РНР (листинг 1.5).\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p></b></font><b><font face=\"Times New Roman\"><font color=\"#000000\" size=\"3\"><i>Листинг 1.5.\n";
echo "</i>\n";
echo "</font></font></b><i><font face=\"Times New Roman\" color=\"#000000\" size=\"3\">Включение\n";
echo "нескольких сценариев РНР в один документ</font></i></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;html&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;head&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;title&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;?\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "print &quot;Another PHP-enabled page&quot;;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "Svariable = &quot;Hello World!&quot;;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "?&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;/title&gt;&lt;/head&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;body&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" size=\"3\" color=\"#000000\">\n";
echo "&lt;? print Svariable; ?&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "&lt;/body&gt;\n";
echo "</font></p>\n";
echo "<p><font face=\"Courier New\" color=\"#000000\" size=\"3\">\n";
echo "&lt;/html&gt;\n";
echo "</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Листинг 1.5 начинается как типичная (пусть\n";
echo "несколько упрощенная) страница\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "HTML. При внедрении нескольких сценариев\n";
echo "переменные, значения которых были\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "присвоены в одном сценарии, могут\n";
echo "использоваться в другом сценарии той же\n";
echo "</font></p>\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "страницы.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p>\n";
echo "</b>\n";
echo "</font>\n";
echo "<A NAME=\"v\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Комментарии в коде РНР</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Комментарии следует использовать даже в\n";
echo "относительно простых и незамысловатых\n";
echo "сценариях. В РНР существуют два формата\n";
echo "комментариев: </font></p>\n";
echo "<ul>\n";
echo "  <li> <i><font SIZE=\"3\" COLOR=\"#000000\">Однострочные\n";
echo "комментарии </font></i><font SIZE=\"3\" COLOR=\"#000000\">обычно\n";
echo "используются для коротких пояснений или\n";
echo "примечаний, относящихся к локальному коду. </font></li>\n";
echo "  <li> <i><font SIZE=\"3\" COLOR=\"#000000\">Многострочные\n";
echo "комментарии </font></i><font SIZE=\"3\" COLOR=\"#000000\">обычно\n";
echo "используются при оформлении алгоритмов на\n";
echo "псевдокоде и в более подробных объяснениях.\n";
echo "</font></li>\n";
echo "</ul>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">Оба способа в конечном счете приводят к\n";
echo "одинаковому результату и совершенно не\n";
echo "влияют на общее быстродействие сценария.\n";
echo "Выбор варианта остается за вами.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\" COLOR=\"#000000\">\n";
echo "Однострочные комментарии\n";
echo "</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "При оформлении однострочных комментариев\n";
echo "используется два стиля комментирования.\n";
echo "Оба стиля работают абсолютно одинаково, но\n";
echo "в них используются разные служебные\n";
echo "символы. В одном случае комментарий\n";
echo "начинается с двойного символа «косая черта»\n";
echo "(//), а в другом — с символа фунта (#). Ниже\n";
echo "приведены примеры обоих стилей:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">&lt;?</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">// Выбрать цвет роз $rose_color = &quot;red&quot;;</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\"># Выбрать цвет фиалок $violet_color = &quot;blue&quot;;</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">print &quot;Roses are\n";
echo "$rose_color,</font> <font color=\"#000000\" face=\"Courier New\" size=\"3\">violets are $violet_color&quot;</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">?&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Конечно, оба стиля однострочных\n";
echo "комментариев могут применяться для\n";
echo "построения искусственных многострочных\n";
echo "комментариев, как показано в следующем\n";
echo "листинге:\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">&lt;?</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">// файл: example. php</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">// автор: У.Дж.Гилмор</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">// дата: 24 августа 2000 г.</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">print &quot;An example with comments&quot;;</font></p>\n";
echo "<p><font color=\"#000000\" face=\"Courier New\" size=\"3\">?&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<b>\n";
echo "<p><font face=\"Times New Roman\" COLOR=\"#000000\">\n";
echo "Многострочные комментарии\n";
echo "</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В РНР существует возможность построения\n";
echo "подробных комментариев, занимающих\n";
echo "несколько строк. Такие комментарии\n";
echo "оформляются в стиле языка С — их начало и\n";
echo "конец обозначаются символами /* и */.\n";
echo "</font></p>\n";
echo "</font>\n";
echo "<p><font face=\"Courier New\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "&lt;?\n";
echo "</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">/*</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&nbsp; Сценарий: multi_coramment_example.php</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&nbsp; Назначение : пример использования\n";
echo "многострочных комментариев</font> </p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&nbsp; Автор: У.Дж.Гилмор</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">&nbsp; Дата: 14 июня 2000 г.</font> </p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">*/</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">print &quot;A multiline comment can be found at the top of this script!&quot;;</font></p>\n";
echo "<p><font color=\"#000000\" size=\"3\" face=\"Courier New\">?&gt;</font></p>\n";
echo "<font face=\"Times New Roman\">\n";
echo "<p>\n";
echo "<font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Как видите, многострочные комментарии\n";
echo "особенно удобны для вывода относительно\n";
echo "длинной сводной информации обо всем\n";
echo "сценарии или его части.\n";
echo "</font></p>\n";
echo "<b>\n";
echo "<p><A NAME=\"w\"></A><font face=\"Times New Roman\" color=\"#000000\" size=\"4\">Итоги</font></p>\n";
echo "</b>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "В этой главе мы рассмотрели некоторые\n";
echo "ключевые аспекты РНР:\n";
echo "</font>\n";
echo "\n";
echo "</p>\n";
echo "<ul>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "историю и особенности РНР;\n";
echo "</font>\n";
echo "\n";
echo "  </li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "установку и конфигурацию;\n";
echo "</font>\n";
echo "\n";
echo "  </li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "«переход» в РНР;\n";
echo "</font>\n";
echo "\n";
echo "  </li>\n";
echo "  <li><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "комментирование кода РНР.\n";
echo "</font>\n";
echo "\n";
echo "  </li>\n";
echo "</ul>\n";
echo "<p><font face=\"Times New Roman\" SIZE=\"3\" COLOR=\"#000000\">\n";
echo "Эти вопросы закладывают основу для\n";
echo "материала следующих глав, в которых будут\n";
echo "более подробно описаны проблемы\n";
echo "программирования на языке РНР. В конце\n";
echo "следующей главы вы будете знать о РНР\n";
echo "достаточно, чтобы писать собственные\n";
echo "программы. Новые знания будут применены на\n";
echo "практике — мы создадим календарь, который\n";
echo "можно будет легко вставить в существующую\n";
echo "web-страницу. Этот проект подготовит вас к\n";
echo "работе над web-приложением РНР Recipes.</font></p>\n";
echo "<table width=\"300\" border=\"0\" align=\"center\" cellpadding=\"3\" cellspacing=\"1\" bgcolor=\"#000066\" class=\"mtx1\">\n";
echo "<tr>\n";
echo "<td bgcolor=\"#CAEEFF\"><center>&nbsp;<a href=\"../intro/1.htm\"><strong>&lt;&lt;&lt;&nbsp;Назад</strong></a>&nbsp;\n";
echo "</center></td>\n";
echo "<td bgcolor=\"#CAEEFF\"><center>&nbsp;<a href=\"../index.html\"><strong>Содержание</strong></a>&nbsp;\n";
echo "</center></td>\n";
echo "<td bgcolor=\"#CAEEFF\"><center>&nbsp;<a href=\"../Chapter 2/1.htm\"><strong>Вперед&nbsp;&gt;&gt;&gt;</strong></a>&nbsp;\n";
echo "</center></td>\n";
echo "</tr>\n";
echo "</table>\n";
echo "\n";
echo "</BODY></HTML>\n";
?>
