Configuration à l'exécution
Le comportement de ces fonctions est affecté par la configuration dans le fichier php.ini.
Nom | Défaut | Modifiable | Historique |
---|---|---|---|
output_buffering | "0" | PHP_INI_PERDIR | |
output_handler | NULL | PHP_INI_PERDIR | Disponible depuis PHP 4.0.4. |
implicit_flush | "0" | PHP_INI_ALL | PHP_INI_PERDIR en PHP <= 4.2.3. |
Voici un éclaircissement sur l'utilisation des directives de configuration.
-
output_buffering
booléen/entier -
Vous pouvez activer la bufferisation de sortie pour tous les fichiers avec cette directive, en lui passant la valeur On. Si vous souhaitez limiter la taille du buffer à une certaine taille, vous pouvez alors indiquer un nombre maximum d'octets à la place de On. Par exemple, output_buffering=4096). Depuis PHP 4.3.5, cette directive est toujours désactivée en ligne de commande.
-
output_handler
string -
Vous pouvez rediriger le résultat de tous vos scripts à une fonction avant leur envoi au navigateur. Par exemple, si vous configurez output_handler à mb_output_handler(), l'encodage des caractères sera adapté de manière transparente. Configurer une telle fonction active automatiquement la bufferisation de sortie.
Note:
Vous ne pouvez pas utiliser simultanément mb_output_handler() avec ob_iconv_handler(), non plus que ob_gzhandler() avec zlib.output_compression.
Note:
Seules les fonctions internes peuvent être utilisées avec cette directive. Pour les fonctions utilisateurs, utilisez ob_start().
-
implicit_flush
booléen -
FALSE
par défaut. En changeant cette valeur pourTRUE
vous indiquez à PHP que le buffer de sortie doit être vidé automatiquement après chaque fonction d'affichage. Cela revient à appeler la fonction flush() après chaque appel à print ou echo et pour tous les blocs HTML.Lorsque vous utilisez PHP en environnement web, activer cette option a de sérieuses implications et généralement, cela n'est conseillé que pour les déboguages. Cette valeur est par défaut à
TRUE
lorsque PHP fonctionne en mode CLI SAPI.Voir aussi ob_implicit_flush().