Заменить и сжать вместо или - PullRequest
0 голосов
/ 17 июня 2020

При использовании ob_end_flush() вывод из PHP сжимается и сразу выводится.

Используя ob_get_clean() вывод может быть объединен с str_replace, однако он не сжимает вывод (echo str_replace($find,$replace,ob_get_clean(); ).

Как мне объединить и функции для поиска, замены и сжатия содержимого для обслуживания?

1 Ответ

0 голосов
/ 17 июня 2020

Проблема требовала лучшего понимания функций, их взаимосвязи и глубины. Я заменил ob_get_clean() на ob_get_contents(), а затем (я считаю) закрыл первую буферизацию вывода через ob_end_clean().

Затем с закрытой буферизацией вывода я снова открыл его, на этот раз с включенным сжатием, и все работает Отлично!

<?php
ob_start();//Start the initial buffer, do NOT use compression here.

//Content output here.

$c =  str_replace($find,$replace,ob_get_contents());//String replacement.
ob_end_clean();//Close buffering.

ob_start('ob_gzhandler');//Start a fresh buffer with compression.
echo $c;//Output the original buffer.
ob_end_flush();//Send to the client.
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...