Запись в стандартный поток вывода

Задача
Необходимо записать в стандартный поток вывода.

Решение
Примените echo или print:

print "Where did my pastrami sandwich go?";
echo "It went into my stomach.";

Обсуждение
В то время как print() – это функция, echo представляет собой конструкцию языка. Это означает, что функция print() возвращает значение, тогда как echo нет. Это значит, что можно включить в выражение функцию print(), но не echo:

// это правильно
(12 == $status) ? print 'Status is good' : error_log('Problem with status!');
// а это приведет к синтаксической ошибке
(12 == $status) ? echo 'Status is good' : error_log('Problem with status!');Используйте php://stdout в качестве имени файла, если вы применяе-
те файловые функции:
$fh = fopen('php://stdout','w') or die($php_errormsg);

Записывать в стандартный поток вывода посредством дескриптора файла, вместо того чтобы просто применить echo или функцию print(), полезно, если необходимо абстрагироваться от того, куда идет ваш вывод, или осуществить стандартный вывод одновременно с записью в файл. Подробности можно найти в рецепте 18.19.

Можно также писать в стандартный поток ошибок, открыв php://stderr:

$fh = fopen('php://stderr','w');

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела PHP на эту тему:
Блокировка файла
Выбор случайной строки из файла
Запись в несколько файловых дескрипторов одновременно
Непосредственная модификация файла без временной копии
Обработка каждого слова в файле

Вернуться в раздел: PHP / 18. Файлы