php5 cli: нет вывода - PullRequest
       26

php5 cli: нет вывода

0 голосов
/ 17 сентября 2009

У меня есть скрипт php, который запускается в командной строке. Чтобы улучшить его производительность, я бы хотел полностью отключить его вывод.

Как я могу это сделать?

Спасибо!

Ответы [ 6 ]

5 голосов
/ 17 сентября 2009

Не уверен насчет производительности, но вы можете использовать

php -q myscript.php > /dev/null
2 голосов
/ 17 сентября 2009

Одним из способов было бы вызвать ob_start () , чтобы включить буферизацию вывода, и периодически вызывать ob_clean () , если вы действительно не хотите вывод (или использовать фиктивную переменную). обратный вызов ob_start (), который ничего не делает).

Не уверен, какой это будет выигрыш в производительности, поскольку внутренне PHP все еще обрабатывает вывод, за исключением того, что он помещается в буфер, а не в стандартный вывод.

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

1 голос
/ 17 сентября 2009
fclose(STDOUT);

Это будет кроссплатформенная первая строка в скрипте PHP.

0 голосов
/ 17 сентября 2009

Если у вас есть доступ к скрипту, замените все echo на //echo. Отличное увеличение производительности, но вам нужно будет проверить многострочные эхо-операторы.

0 голосов
/ 17 сентября 2009

Использование > / dev / null недостаточно?

0 голосов
/ 17 сентября 2009
function ob_esity($b) { return ''; }
ob_start('ob_esity');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...