Hallo Tweakers,
Ik heb een vraagje over output buffering in PHP. Ik gebruik namelijk het volgende stukje code bovenaan mijn index.php:
Nu doet dit naar mijn weten het volgende: Indien de browser gzipped content toe staat (dus ob_gzhandler returned true) dan gzipt hij de content.
Zoniet, dan start hij normale output buffering.
Echter gebruik ik een template-engine (zelfgemaakt) welke ik o.a. gebruik om templates te fetchen, het volgende stukje gebruikt:
Ik gebruik ook nog een display() functie, maar die geeft de content meteen weer, ik include namelijk de file zonder de output te bufferen of iets
Alleen rest mij nu nog een vraag:
Ik zou hier toch eigenlijk ook ob_gzhandler moeten gebruiken imo? Omdat ik weer content op haal..
Alleen als ik 2x ob_gzhandler wil doen krijg ik naar mijn weten een PHP Error.
En werkt dit uberhaupt wel goed? Of sla ik nu de plank mis omdat ik 2 keer output buffering start ofzo
Dus hoe kan ik hier het beste mee omgaan? Ik weet redelijk veel van output buffering, maar hier heb ik jullie wijsheid even bij nodig
Ik heb een vraagje over output buffering in PHP. Ik gebruik namelijk het volgende stukje code bovenaan mijn index.php:
PHP:
1
2
3
4
5
6
7
8
| <?php if( !ob_start("ob_gzhandler") ) ob_start(); header('Content-Type: text/html; charset=iso-8859-1'); /* de rest van de index.. controller laden enz */ |
Nu doet dit naar mijn weten het volgende: Indien de browser gzipped content toe staat (dus ob_gzhandler returned true) dan gzipt hij de content.
Zoniet, dan start hij normale output buffering.
Echter gebruik ik een template-engine (zelfgemaakt) welke ik o.a. gebruik om templates te fetchen, het volgende stukje gebruikt:
PHP:
1
2
3
4
5
6
| /* stukje uit de $tpl->fetch() functie */ ob_start(); include($file); $output = ob_get_contents(); ob_end_clean(); |
Ik gebruik ook nog een display() functie, maar die geeft de content meteen weer, ik include namelijk de file zonder de output te bufferen of iets
Alleen rest mij nu nog een vraag:
Ik zou hier toch eigenlijk ook ob_gzhandler moeten gebruiken imo? Omdat ik weer content op haal..
Alleen als ik 2x ob_gzhandler wil doen krijg ik naar mijn weten een PHP Error.
En werkt dit uberhaupt wel goed? Of sla ik nu de plank mis omdat ik 2 keer output buffering start ofzo

Dus hoe kan ik hier het beste mee omgaan? Ik weet redelijk veel van output buffering, maar hier heb ik jullie wijsheid even bij nodig
[ Voor 7% gewijzigd door Saven op 05-03-2009 00:43 ]