Skip to content

Commit

Permalink
outcontrol section sync
Browse files Browse the repository at this point in the history
  • Loading branch information
devnexen committed Jan 16, 2024
1 parent ec4f6aa commit b0544c3
Show file tree
Hide file tree
Showing 4 changed files with 95 additions and 68 deletions.
9 changes: 8 additions & 1 deletion reference/outcontrol/functions/ob-implicit-flush.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: cdc9d28d334bbc08386fecf8aade66080004a9dd Maintainer: yannick Status: ready -->
<!-- EN-Revision: 6851c0f2ae24bf7fd9fd5ce4391c8527722f614b Maintainer: yannick Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.ob-implicit-flush" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
Expand All @@ -20,6 +20,13 @@
navigateur verra ses données envoyées immédiatement (la fonction
<function>flush</function> est appelée automatiquement).
</para>
<note>
<simpara>
Cette fonction n'a aucun effet sur les gestionnaires de sortie de niveau utilisateur,
tels que ceux démarrés par <function>ob_start</function>
ou <function>output_add_rewrite_var</function>.
</simpara>
</note>
</refsect1>

<refsect1 role="parameters">
Expand Down
54 changes: 31 additions & 23 deletions reference/outcontrol/functions/output-add-rewrite-var.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: c6a8e42bdbbb814124b84d45d95cd793129aac6b Maintainer: jpauli Status: ready -->
<!-- EN-Revision: b0d9505811e05bc11b58ef23167f3855c742edba Maintainer: jpauli Status: ready -->
<!-- Reviewed: no -->

<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.output-add-rewrite-var">
Expand All @@ -17,26 +17,34 @@
<methodparam><type>string</type><parameter>value</parameter></methodparam>
</methodsynopsis>
<para>
Cette fonction ajoute une nouvelle paire nom/valeur au mécanisme de réécriture d'URL.
Le nom et la valeur sera ajouté aux URL (en tant que paramètre GET) et aux formulaires
(en tant que champs cachés) de la même façon que pour les identifiants de session
lorsque la réécriture d'URL est activée avec <link
linkend="ini.session.use-trans-sid">session.use_trans_sid</link>.
Cette fonction démarre le gestionnaire de tampon de sortie <literal>'URL-Rewriter'</literal>
s'il n'est pas actif,
stocke les paramètres <parameter>name</parameter> et <parameter>value</parameter>,
et lors de la vidange du tampon, réécrit les <acronym>URL</acronym>s
et les formulaires en fonction des paramètres <acronym>ini</acronym> applicables.
Les appels ultérieurs à cette fonction stockeront toutes les paires nom/valeur
supplémentaires jusqu'à ce que le gestionnaire soit désactivé.
</para>
<para>
Ce comportement est contrôlé par les options
<link
linkend="ini.url-rewriter.tags">url_rewriter.tags</link> et
<link linkend="ini.url-rewriter.hosts">url_rewriter.hosts</link> du &php.ini;.
Lorsque le tampon de sortie est vidé
(en appelant <function>ob_flush</function>, <function>ob_end_flush</function>,
<function>ob_get_flush</function> ou à la fin du script),
le gestionnaire <literal>'URL-Rewriter'</literal> ajoute les paires nom/valeur
en tant que paramètres de requête aux <acronym>URL</acronym>s dans les attributs des balises HTML
et ajoute des champs cachés aux formulaires en fonction des valeurs des
directives de configuration <link linkend="ini.url-rewriter.tags">url_rewriter.tags</link> et
<link linkend="ini.url-rewriter.hosts">url_rewriter.hosts</link>.
</para>
<para>
Il est à noter que cette fonction ne peut être appellé avec succès au plus
une fois par requête.
Chaque paire nom/valeur ajoutée au gestionnaire <literal>'URL-Rewriter'</literal>
est ajoutée aux <acronym>URL</acronym>s et/ou formulaires
même si cela résulte en des paramètres de requête d'<acronym>URL</acronym> dupliqués
ou des éléments avec les mêmes attributs de nom.
</para>
<note>
<simpara>
L'appel à cette fonction démarre implicitement la temporisation de
sortie si elle n'est pas déjà activée.
Une fois que le gestionnaire <literal>'URL-Rewriter'</literal> a été désactivé,
il ne peut pas être redémarré.
</simpara>
</note>
</refsect1>
Expand Down Expand Up @@ -87,13 +95,13 @@
<row>
<entry>7.1.0</entry>
<entry>
Antérieur à php 7.1.0, la réécriture des variables définis par
<function>output_add_rewrite_var</function> utilisait la même mémoire
tampon de sortie que le module de session trans sid. À partir de PHP 7.1.0, le
tampon de sortie dédié est utilisé, <link linkend="ini.url-rewriter.tags">
url_rewriter.tags</link>
est utilisé uniquement pour les fonctions de sortie, ajout de <link
linkend="ini.url-rewriter.tags">url_rewriter.hosts</link>.
À partir de PHP 7.1.0, un tampon de sortie dédié est utilisé,
<link linkend="ini.url-rewriter.tags">url_rewriter.tags</link>
est utilisé uniquement pour les fonctions de sortie et
<link linkend="ini.url-rewriter.tags">url_rewriter.hosts</link> est disponible.
Avant PHP 7.1.0, les variables de réécriture définies par <function>output_add_rewrite_var</function>
partageaient un tampon de sortie avec la prise en charge transparente de l'ID de session
(voir <link linkend="ini.session.trans-sid-tags">session.trans_sid_tags</link>).
</entry>
</row>
</tbody>
Expand All @@ -110,6 +118,8 @@
<programlisting role="php">
<![CDATA[
<?php
ini_set('url_rewriter.tags', 'a=href,form=');
output_add_rewrite_var('var', 'value');
// Quelques liens
Expand Down Expand Up @@ -155,8 +165,6 @@ Array
<member><function>ob_list_handlers</function></member>
<member><link linkend="ini.url-rewriter.tags">url_rewriter.tags</link></member>
<member><link linkend="ini.url-rewriter.hosts">url_rewriter.hosts</link></member>
<member><link linkend="ini.session.trans-sid-tags">session.trans_sid_tags</link></member>
<member><link linkend="ini.session.trans-sid-hosts">session.trans_sid_hosts</link></member>
</simplelist>
</para>
</refsect1>
Expand Down
12 changes: 6 additions & 6 deletions reference/outcontrol/functions/output-reset-rewrite-vars.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 6ab6ea465889620fc2a8cdaf7b008cbaed83c523 Maintainer: jpauli Status: ready -->
<!-- EN-Revision: f3f9d2632122a094f9b00b1896b8efc403040f1d Maintainer: jpauli Status: ready -->
<!-- Reviewed: yes -->

<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.output-reset-rewrite-vars">
Expand All @@ -16,9 +16,8 @@
<void/>
</methodsynopsis>
<para>
Cette fonction annule la règle de réécriture et efface toutes les variables
de réécriture précédemment définies avec la fonction
<function>output_add_rewrite_var</function>.
Cette fonction supprime toutes les variables de réécriture précédemment définies par
la fonction <function>output_add_rewrite_var</function>.
</para>
</refsect1>

Expand Down Expand Up @@ -71,7 +70,8 @@
<programlisting role="php">
<![CDATA[
<?php
session_start();
ini_set('url_rewriter.tags', 'a=href');
output_add_rewrite_var('var', 'value');
echo '<a href="file.php">link</a>';
Expand All @@ -85,7 +85,7 @@ echo '<a href="file.php">link</a>';
&example.outputs;
<screen>
<![CDATA[
<a href="file.php?PHPSESSID=xxx&var=value">link</a>
<a href="file.php?var=value">link</a>
<a href="file.php">link</a>
]]>
</screen>
Expand Down
88 changes: 50 additions & 38 deletions reference/outcontrol/ini.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 86e6094e86b84a51d00ab217ac50ce8dde33d82a Maintainer: yannick Status: ready -->
<!-- EN-Revision: c2c5f47c53f58b5a50b5cc3c30116cb2aecf2d3c Maintainer: yannick Status: ready -->
<!-- Reviewed: yes -->

<section xml:id="outcontrol.configuration" xmlns="http://docbook.org/ns/docbook">
Expand All @@ -21,30 +21,31 @@
<tbody>
<row>
<entry><link linkend="ini.output-buffering">output_buffering</link></entry>
<entry>"0"</entry>
<entry><literal>"0"</literal></entry>
<entry>PHP_INI_PERDIR</entry>
<entry></entry>
</row>
<row>
<entry><link linkend="ini.output-handler">output_handler</link></entry>
<entry>NULL</entry>
<entry>&null;</entry>
<entry>PHP_INI_PERDIR</entry>
<entry></entry>
</row>
<row>
<entry><link linkend="ini.implicit-flush">implicit_flush</link></entry>
<entry>"0"</entry>
<entry><literal>"0"</literal></entry>
<entry>PHP_INI_ALL</entry>
<entry></entry>
</row>
<row>
<entry><link linkend="ini.url-rewriter.tags">url_rewriter.tags</link></entry>
<entry>"a=href,area=href,frame=src,form=,fieldset="</entry>
<entry><literal>"form="</literal></entry>
<entry>PHP_INI_ALL</entry>
<entry>Avant PHP 7.1.0, il était utilisé pour
la réécriture d'URL quand le SID transparent était activé. Depuis PHP
7.1.0, il est uniquement utilisé par la fonction
<entry>
À partir de PHP 7.1.0, ce paramètre INI n'a d'effet que sur
<function>output_add_rewrite_var</function>.
Avant PHP 7.1.0, ce paramètre INI activait la prise en charge transparente
de l'ID de session (voir <link linkend="ini.session.trans-sid-tags">session.trans_sid_tags</link>).
</entry>
</row>
<row>
Expand All @@ -68,13 +69,12 @@
</term>
<listitem>
<para>
Vous pouvez activer la bufferisation de sortie pour tous les fichiers
avec cette directive, en lui passant la valeur <literal>On</literal>.
Si vous souhaitez limiter la taille du buffer à une certaine taille,
vous pouvez alors indiquer un nombre maximum d'octets à la place de
<literal>On</literal>. Par exemple, <literal>output_buffering=4096</literal>).
Cette directive est toujours désactivée en ligne
de commande.
La mise en mémoire tampon de la sortie pour tous les fichiers peut être activée
en définissant cette directive sur <literal>"On"</literal>.
Pour limiter la taille du tampon, un nombre/quantité correspondant au
nombre maximal d'octets autorisés peut être utilisé à la place de
<literal>"On"</literal> pour la valeur de cette directive.
Par exemple, <literal>output_buffering=4096</literal>.
</para>
</listitem>
</varlistentry>
Expand All @@ -86,18 +86,26 @@
</term>
<listitem>
<para>
Vous pouvez rediriger le résultat de tous vos scripts à une fonction
avant leur envoi au navigateur. Par exemple, si vous configurez
output_handler à <function>mb_output_handler</function>, l'encodage
des caractères sera adapté de manière transparente. Configurer
une telle fonction active automatiquement la bufferisation de sortie.
La sortie des scripts peut être redirigée vers une fonction.
Par exemple, en définissant <literal>output_handler</literal>
sur <function>mb_output_handler</function>, le codage des caractères sera
converti de manière transparente vers le codage spécifié.
La configuration de n'importe quel gestionnaire de sortie active
automatiquement la mise en mémoire tampon de la sortie.
</para>
<note>
<para>
Vous ne pouvez pas utiliser simultanément <function>mb_output_handler</function> avec
<function>ob_iconv_handler</function>, non plus que
<function>ob_gzhandler</function> avec
<link linkend="ini.zlib.output-compression">zlib.output_compression</link>.
<function>mb_output_handler</function> et
<function>ob_iconv_handler</function> ne peuvent pas être utilisés ensemble,
et <function>ob_gzhandler</function> et
<link linkend="ini.zlib.output-compression">zlib.output_compression</link>
ne peuvent pas être utilisés avec l'un des éléments suivants :
<function>mb_output_handler</function>,
<function>ob_gzhandler</function>,
<link linkend="ini.zlib.output-compression">zlib.output_compression</link>,
le gestionnaire 'URL-Rewriter'
(voir <link linkend="ini.session.use-trans-sid">session.use_trans_sid</link>
et <function>output_add_rewrite_var</function>).
</para>
</note>
<note>
Expand All @@ -120,9 +128,9 @@
à PHP que le buffer de sortie doit être vidé automatiquement après
chaque fonction d'affichage. Cela revient à appeler la fonction
<function>flush</function> après chaque appel à
<function>print</function>
ou <function>echo</function>
et pour tous les blocs <literal>HTML</literal>.
toute fonction produisant une sortie (comme
<function>print</function> ou <function>echo</function>)
et chaque bloc HTML.
</para>
<para>
Lorsque vous utilisez PHP en environnement web, activer cette
Expand All @@ -144,23 +152,27 @@
</term>
<listitem>
<simpara>
Spécifie quelles sont les balises HTML qui doivent
être réécrites par les valeurs de la fonction
<function>output_add_rewrite_var</function>. Par défaut, il vaut
<literal>a=href,area=href,frame=src,input=src,form=fakeentry,fieldset=</literal>.
<literal>url_rewriter.tags</literal> spécifie les balises HTML et les attributs
dans lesquels les URLs sont réécrites par les valeurs de
<function>output_add_rewrite_var</function>. Par défaut, c'est <literal>"form="</literal>.
</simpara>
<simpara>
<literal>form</literal> est une balise spéciale. La variable de formulaire
<literal>&lt;input hidden="session_id" name="session_name"&gt;</literal>
est ajoutée.
Ajouter <literal>"form="</literal> ou n'importe quel attribut <literal>form</literal>
ajoutera un élément <literal>input</literal> caché dans le <literal>form</literal>
avec un attribut de nom et de valeur pour chaque paire nom-valeur transmise à
<function>output_add_rewrite_var</function>.
</simpara>
<caution>
<simpara>
Ajouter la même balise plus d'une fois à <literal>url_rewriter.tags</literal>
utilisera uniquement la première occurrence pendant le processus de réécriture d'URL.
</simpara>
</caution>
<note>
<simpara>
Avant PHP 7.1.0, <link linkend="ini.url-rewriter.tags">url_rewriter.tags</link>
Antérieur à PHP 7.1.0, <link linkend="ini.url-rewriter.tags">url_rewriter.tags</link>
était utilisé pour spécifier
<link linkend="ini.session.trans-sid-tags">session.trans_sid_tags</link>.
À partir de PHP 7.1.0, <literal>fieldset</literal> n'est plus considéré comme
une balise spéciale.
</simpara>
</note>
</listitem>
Expand All @@ -177,7 +189,7 @@
pour includes les valeurs de la fonction
<function>output_add_rewrite_var</function>.
Par défaut <literal>$_SERVER['HTTP_HOST']</literal>. Plusieurs
hôtes peuvent être spécifiés séparé par ",", aucun espace n'est autorisé
hôtes peuvent être spécifiés séparé par une virgule, aucun espace n'est autorisé
entre les hôtes. Par exemple :
<literal>php.net,wiki.php.net,bugs.php.net</literal>
</simpara>
Expand Down

0 comments on commit b0544c3

Please sign in to comment.