(PHP 4 >= 4.3.0, PHP 5, PHP 7, PHP 8)
stream_filter_prepend — Attache un filtre à un flux en début de liste
$stream
,$filtername
,$read_write
= ?,$params
= ?
stream_filter_prepend() ajoute le filtre
filtername
à la liste de filtres attachés au
flux stream
.
stream
Le flux cible.
filtername
Le nom du filtre.
read_write
Par défaut, stream_filter_prepend() va
attacher le filtre à la chaîne de filtre de lectures
si le fichier a été ouvert en lecture (i.e. mode
r
, et/ou +
). Le filtre
va aussi être attaché à la chaîne de filtres d'écriture
si le fichier a été ouvert en écriture (i.e. mode
w
, a
, et/ou +
).
STREAM_FILTER_READ
,
STREAM_FILTER_WRITE
, et/ou
STREAM_FILTER_ALL
peuvent aussi être passés dans le
paramètre read_write
pour imposer le comportement
désiré. Voyez stream_filter_append() pour un exemple
d'utilisation de ce paramètre.
params
Le filtre sera ajouté avec les paramètres spécifiés dans params
,
au début de la liste, et sera ainsi appelé en premier
dans les opérations du flux. Pour ajouter un filtre à la fin de la liste,
utilisez stream_filter_append().
Retourne une ressource en cas de succès, ou false
si une erreur survient.
La ressource peut être utilisée pour se référer à cette instance de filtre
pendant un appel à la fonction stream_filter_remove().
false
est retourné si stream
n'est pas une ressource,
ou si filtername
ne peut être atteint.
Note: Quand vous utilisez des filtres personnalisés
stream_register_filter() doit être appelée avant stream_filter_prepend() pour enregistrer le filtre sous le nom defiltername
.
Note: Les données du flux (locales et distantes) sont retournées en morceaux, les données non acheminées étant conservées dans le tampon interne. Lorsqu'un nouveau filtre est ajouté au début du flux, les données dans le tampon interne ne sont pas passées dans le nouveau filtre à ce moment là. Ceci est différent du comportement de stream_filter_append().
Note: Quand un filtre est ajouté pour la lecture et l'écriture, deux instances du filtres sont créées. stream_filter_prepend() doit être appelée deux fois avec
STREAM_FILTER_READ
etSTREAM_FILTER_WRITE
pour obtenir les ressources de filtres.