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

PHP:
Запись в стандартный поток ошибок

Как это сделать:

Вы можете записывать в stderr на PHP с помощью fwrite() или оболочек потоков. Вот как это сделать:

<?php
// Запись в stderr с использованием fwrite
fwrite(STDERR, "Это сообщение об ошибке.\n");

// Использование оболочки потока
file_put_contents('php://stderr', "Это другое сообщение об ошибке.\n");
?>

Пример вывода (в консоли):

Это сообщение об ошибке.
Это другое сообщение об ошибке.

Подробный разбор

Исторически разделение stdout и stderr происходит из способа обработки потоков ввода/вывода в Unix. Другие языки, например С, имеют аналогичные конвенции. Альтернативы в PHP могут включать в себя использование библиотек для логирования или настраиваемых обработчиков ошибок, но прямая запись в stderr является простым решением для консольных приложений. За кулисами stderr является не буферизированным потоком вывода, что означает, что сообщения сразу же выводятся без ожидания.

См. также