Первая программа на PHP

Опубликовал: Wednesday, March 14, 2024 в категории HTML | Пока нет комментариев

При изучении языков программирования принято начинать с программы, вы- водящей надпись "Hello, world". Не будем нарушать традицию и продемон- стрируем, как это выглядит на PHP (листинг 5.1).

Листинг 5.1. Первая программа

<html>

<head>

<title>Первая программа</title>

</head>

<body>

<?php

echo "Hello, world";

?>

</body>

</html>

Набираем код в Notepad++ и сохраняем в формате PHP (например, index.php) в папке C:\Apache2\htdocs. Запускаем Web-браузер и в адресной строке Web- браузера набираем http://localhost/.

В итоге в окне Web-браузера отобразится надпись "Hello, world". Теперь да-

вайте отобразим исходный HTML-код (листинг 5.2).

Листинг 5.2. Исходный HTML-код

<html>

<head>

<title>Первая программа</title>

</head>

<body>

Hello, world</body>

</html>

Как нетрудно заметить, никаких признаков PHP в исходном коде нет.

Кроме того, HTML-теги также можно выводить с помощью оператора echo.

Давайте заменим содержимое нашего файла на листинг 5.3.

Листинг 5.3. Вывод HTML-тегов с помощью PHP

<?php

echo ‘<html>’;

echo ‘<head>’;

echo ‘<title>Первая программа</title>’;

echo ‘</head>’;

echo ‘<body>’;

echo ‘Hello, world’;

echo ‘</body>’;

echo ‘</html>’;

?>

В итоге получим следующий исходный код:

<html><head><title>Первая программа</title></head><body>Hello, world</body></html>

Как видно, в этом случае весь код отображается на одной строке. Чтобы ото- бразить каждый тег на отдельной строке, необходимо добавить символ пере- вода строки (листинг 5.4). Для системы UNIX таким символом будет \n. В операционной системе Windows символ перевода строки состоит из ком- бинации двух символов \r\n.

Листинг 5.4. Вывод каждого тега на отдельной строке

<?php

echo "<html>\n";

echo "<head>\n";

echo "<title>Первая программа</title>\n";

echo "</head>\n";

echo "<body>\n";

echo "Hello, world\n";

echo "</body>\n";

echo "</html>\n";

?>

Теперь каждый тег будет на своей строчке (листинг 5.5).

Листинг 5.5. Результат вывода предыдущей программы

<html>

<head>

<title>Первая программа</title>

</head>

<body>

Hello, world

</body>

</html>

Кроме того, при выводе HTML-тегов с помощью оператора echo следует помнить, что теги могут иметь параметры, значения которых заключаются в кавычки. Например, если попробовать вывести тег <span> так, как показано в листинге 5.6, то возникнет ошибка

Parse error: parse error, expecting ','' or ‘;” in

C:\Apache2\htdocs\index.php on line 5

Листинг 5.6. Ошибочный код при выводе кавычек

<?php

echo "<html><head>\n";

echo "<title>Первая программа</title>\n";

echo "</head><body>\n";

echo "<span style="color:red">\n";

echo "Hello, world\n";

echo "</span>\n";

echo "</body></html>\n";

?>

Обойти данную проблему можно следующими способами:

? добавить защитный слэш перед каждой кавычкой:

echo "<span style=\"color:red\">\n";

? в операторе echo использовать не кавычки, а апострофы:

echo ‘<span style="color:red">’;

О БРАТИТЕ ВНИМ АНИЕ

При использовании этого способа могут возникнуть другие проблемы. На- пример, в этом случае нельзя использовать специальные символы (\n). Кроме того, если внутри используется переменная, то вместо ее значения мы увидим имя переменной.

Все выражения в PHP заканчиваются точкой с запятой. В отличие от JavaScript, где отсутствие этого символа не приводит к созданию сообщения об ошибке, отсутствие точки с запятой в PHP приведет к остановке выполне- ния сценария и выдаче сообщения об ошибке. Это самая распространенная ошибка среди начинающих изучать язык PHP.

5.3. Методы встраивания PHP-кода

PHP-код встраивается в документ с помощью дескрипторов, иногда назы-

ваемых также тегами:

? <?php и ?>:

<?php echo "Hello, world\n"; ?>

Отключить поддержку этих дескрипторов нельзя. Настоятельно рекомен-

дую использовать именно их;

? <? и ?>:

<? echo "Hello, world\n"; ?>

Доступны, только если директива short_open_tag имеет значение On. При использовании этих дескрипторов следует помнить, что могут воз- никнуть проблемы при выводе XML-документов, так как последователь- ность <?xml … ?> будет воспринята как выделение PHP-кода.

Выражение

<? echo "Hello, world\n"; ?>

можно записать в более компактном виде:

<?="Hello, world\n"?>

Однако следует помнить, что этот вариант возможен, только если дирек-

тива short_open_tag в файле конфигурации php.ini имеет значение On;

? <% и %>:

<% echo "Hello, world\n"; %>

Для использования этого дескриптора необходимо включить поддержку в файле php.ini (см. разд. 4.6). Для этого строку

asp_tags = Off нужно заменить на asp_tags = On

а затем перезапустить сервер Apache. В PHP 6 поддержка этих дескрип-

торов полностью удалена;

? <script language="PHP"> и </script>. Удивлены? Внедрить PHP-код можно точно так же, как и JavaScript-код. Нужно только указать в пара- метре language значение PHP:

<script language="PHP"> echo "Hello, world\n"; </script>

На практике такими дескрипторами никто не пользуется.

Источник: Прохоренок Н. А. HTML, JavaScript, PHP и MySQL. Джентльменский набор Web-мастера. — 3-е изд., перераб. и доп. — СПб.: БХВ-Петербург, 2010. — 912 с.: ил. + Видеокурс (на CD-ROM) — (Профессиональное программирование)

Похожие посты:

Комментировать

Your email address will not be published. Required fields are marked *