8.3. Отправка текста в браузер
Любой текст, находящийся за пределами тегов PHP, автоматически отправляется в браузер. Это вполне ожидаемый результат. В главе 26, "Интегрирование в HTML-код", описывается решение разослать текст с помощью функции PHP. PHP имеет три функции, предназначенные для отправки текстовых данных в браузер: echo, print и printf.
echo первая строка, вторая строка, последняя строка
Функция echo (листинг 8.2) отправляет в браузер любое количество параметров, разделенных запятыми. Каждый из них преобразуется в отдельную строку и рас­печатывается без пробела. В отличие от всех других функций PHP, для функции echo не требуются скобки. В действительности echo является больше оператором, чем функцией.

| Листинг 8.2. Функция echo_
<?php
echo "Первая строка", 2, 3.4, " последняя строка";

flush()
При отправке текста в браузер с помощью функций print и echo он хранится в буфере памяти, а запись производится только по мере заполнения буфера. Функция flush (листинг 8.3) передает содержимое буфера в браузер немедленно. Так как Web-сервер постоянно контролирует обмен данными с браузером, такая мера, как сброс буфера, может оказаться неэффективной.
PHP обеспечивает другой уровень буферизации вывода, что и будет показано ниже в этой главе.

| Листинг 8.3. Функция flush_
<?php
//моделировать длительное вычисление
//сброс буфера вывода после каждой итерации цикла
for($n=0; $n<5; $n++)
{
print("Вычисление...<br>n"),•
flush();
sleep(3);
}
print("Закончено!<br>n");
?>

print(string output)
Аргумент output функции print (листинг 8.4) отправляется в браузер. Аналогично функции echo, функция print не требует скобок. 

Листинг 8.4. Функция print

<?php
print("hello world!<br>n");
?>

printf(string format, ...)
Функция printf (листинг 8.5) выводит аргументы в браузер, преобразуя их в соответствии со строкой формата. Строка формата содержит коды различных типов данных, перечисленные в табл. 8.2. Эти коды начинаются со знака процента (%) и заканчивается буквой, определяющей тип данных. Коды соответствуют списку значений, которые следуют в списке аргументов после форматной строки. Любой текст, находящийся вне этих кодов, будет отправлен в браузер в неизменном виде.

Листинг 8.5. Функция printF

<?php
printf("%-10s %5d %05.5f <br>n", "a string", 10, 3.14);
?>
Браузер ввода-вывода
Существует возможность размещения символов между знаком % и спецификатором типа, управляющим форматированием данных. Сразу же за знаком % можно задать любое количество флагов. Эти флаги управляют выравниванием и смещением (табл. 8.3).
Браузер ввода-вывода
После флагов задается минимальная длина поля. Преобразованный вывод будет распечатан в поле такой же или, по необходимости, большей ширины. Если вывод меньше минимальной длины, он будет дополнен заданными символами или (по умолчанию) пробелами. Дополнение обычно размещается слева, но если указан флаг -, дополнение размещается справа.
После этого задается точность, которая отделяется от минимальной длины поля точкой. Для строк точность задает максимальную длину строки. Для вещественных значений точность - это количество цифр, представленных в дробной части числа. Для целых чисел точность не имеет никакого значения.
vprintf(string format, array values)
Функция vprintf работает аналогично функции printf, исключая то, что формат задается в массиве.