Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Vtoraya_chast_uchebnika_po_WWW_Okonchat_variant...doc
Скачиваний:
62
Добавлен:
27.09.2019
Размер:
6.06 Mб
Скачать

Пример 1‑2

<?php

echo "Привет от PHP!<br>";

echo "Это занимает

несколько строк. Переводы строки тоже

выводятся";

echo "Это занимает \n несколько строк. Переводы строки тоже \n выводятся";

echo "Выводится число";

echo 123687;

echo 'Также вы можете вставлять в строки

символ новой строки таким образом,

поскольку это нормально';

// Выведет: Однажды Арнольд сказал: "I'll be back"

echo 'Однажды Арнольд сказал: "I\'ll be back"';

// Выведет: Вы удалили C:\*.*?

echo 'Вы удалили C:\\*.*?';

// Выведет: Вы удалили C:\*.*?

echo 'Вы удалили C:\*.*?';

// Выведет: Это не вставит: \n новую строку

echo 'Это не вставит: \n новую строку';

?>

г). Использование синтаксиса heredoc (переводится как «здесь документ»)

Для отображения большого объёма текста можно использовать так называемый синтаксис heredoc. Он должен начинаться с символа <<<, после которого следует произвольный идентификатор (набор символов). Далее располагается нужный текст. После него в следующей строке с первого символа обязательно надо разместить тот же идентификатор, что и в начале текста. Ниже приводится простой пример (без номера), иллюстрирующий это правило. Вместо END можно использовать любую букву или совокупность букв.

<?php

echo <<<END

Здесь может быть

произвольно

длинный текст

END;

?>

д). Об escape-последовательностях.

В примере (Пример 1 -2) было использовано сочетание /n. Оно относится к так называемым экранирующим или управляющим последовательностям.

Escape-последовательность («исключённая последовательность», «экранированная последовательность», «управляющая последовательность») — совокупность идущих подряд значащих элементов, в группе теряющих для обрабатывающего механизма своё индивидуальное значение, одновременно с приобретением этой группой нового значения.

Это означает, что использование определённые сочетания символов определённым образом, не совпадающим с их обычным видимым значением, обрабатываются транслятором или интерпретатором. В большинстве случаев такими последовательностями являются соответствующие последовательности текстовых символов. Упомянутая выше последовательность /n заставляет переводить следующий за ней текст на следующую строку.

Такие последовательности применяются во многих языках. Таблица применяемых последовательностей в HTML можно посмотреть на многих сайтах7.

Управляющие символы — элементы данной кодировки, которым не приписано графическое представление, но которые используются для управления устройствами, организации передачи данных и других целей.

Сейчас для этих целей применяются форматы файлов, языки управления устройствами (такие как Postscript) и сетевые протоколы. Поэтому многие управляющие символы сейчас или не используются вообще, или используются не по назначению.

Стандарт POSIX8 требует обязательного наличия лишь восьми управляющих символов — \0, \a, \b, \t, \n, \v, \f, \r .

Следует отметить, что разными браузерами коды и имена специальных символов (escape-последовательности) могут интерпретироваться несколько различным образом. На вид отображаемых символов также влияет выбранный для отображения шрифт и таблица символов (кодировка). Иногда некоторые символы могут не восприниматься в средах разработки на Windows, но воспринимаются в –nix средах. Поэтому использование этих последовательностей должно проводиться очень тщательно. Например, \n может восприниматься как простой пробел, и его действие надо выполнять с помощью тэга <br>.

В случае если управляющие последовательности в PHP-скриптах не работают, то надо попытаться заменить их соответствующими тегами HTML.

Необходимость превращения текстовых знаков в управляющие команды и наоборот возникла оттого, что некоторые из знаков в программах, работающих с текстом, имеют специальное (управляющее) значение. Для того чтобы использовать эти знаки непосредственно как текст, их кодируют специфическими для каждой системы обозначения (программы) способами (escape-последовательностями). Например, интерпретатор PHP распознаёт знак $ как первый символ имени переменной, а тот же символ, предварённый обратной косой чертой (\$) воспринимается им как собственно символ $. В UNIX-оболочках пробел служит для разделения параметров, поэтому для его использования при обозначении имён файлов впереди ставится обратная косая черта (\).

Приведём ещё пример необходимости использования escape-последовательностей. Каждый web-программист сталкивался с тем, что в публикуемой статье на сайте надо вставить какой-либо символ, воспринимаемый как символ управления. Допустим web-мастеру в тексте статьи надо вставить левую угловую скобку (<), если он поставит "<", то браузер выдаст ошибку, так как символ "<" является управляющим.

Возникает вопрос: «Как же тогда быть в данной ситуации?» Выход есть. Чтобы использовать данные символы (приведённые выше) в документе, необходимо заменить их escape-последовательностями. В данном примере, чтобы web-мастеру вставить "<" в публикуемую статью, ему просто нужно изменить символ "<" на " < ".

Итак, некоторые символы в HTML, PHP являются управляющими и не могут напрямую использоваться в документе. Приведём набор таких символов:

• Левая угловая скобка "<"

• Правая угловая скобка ">"

• Амперсанд "&"

• Двойные кавычки " " "

• Одинарные кавычки “

В таблице Таблица 1 -1 приведён минимальный список достаточно часто встречающихся управляющих последовательностей.

е). Для вывода данных в PHP может применяться специальная функция print(), но её возможности мы рассмотрим позже, когда познакомимся с другими, кроме текста, объектами языка. .

Таблица 1‑1