



|
Manuel PHP
|
|
Table : .stream bucket append.stream bucket make writeable .stream bucket new .stream bucket prepend .stream context create .stream context get default .stream context get options .stream context set option .stream context set params .stream copy to stream .stream encoding .stream filter append .stream filter prepend .stream filter register .stream filter remove .stream get contents .stream get filters .stream get line .stream get meta data .stream get transports .stream get wrappers .stream register wrapper .stream wrapper register() .stream resolve include path .fopen() .stream select .stream set blocking .stream set timeout .stream set write buffer .stream socket accept .stream socket server() .stream socket client .stream socket enable crypto .stream socket get name .stream socket pair .stream socket recvfrom .stream socket sendto .stream socket server .stream socket shutdown .stream wrapper register .stream wrapper restore .stream wrapper unregister |
stream_wrapper_registerstream_wrapper_register(PHP 4 >= 4.3.2, PHP 5) stream_wrapper_register -- Enregistre une enveloppe URL, implémentée comme une classe PHPDescriptionbool stream_wrapper_register ( string protocol, string classname )stream_wrapper_register() permet d'implémenter des gestionnaires de protocole et de flux, à utiliser avec toutes les autres fonctions de fichiers, comme fopen(), fread() etc.
Pour implémenter une enveloppe, il faut définir une classe avec
la liste des membres définie ci-dessous. Lorsque quelqu'un ouvre
le flux, PHP va créer une instance de la classe
stream_wrapper_register() retourne FALSE si
le protocole
Cette méthode est appelée immédiatement après la création de votre
flux.
Si le paramètre Si la ressource demandée a été ouverte, il faut retourner TRUE, ou, sinon, FALSE void stream_close ( void )Cette méthode est appelée lorsque le flux est fermé, grâce à la fonction fclose(). Vous devez libérer toutes les ressources verrouillées ou réservées par le flux. string stream_read ( int count )
Cette méthode est appelée suite à l'utilisation des fonctions fread()
et fgets(). Vous devez lire jusqu'à
Cette méthode est appelée lorsque la fonction fwrite()
est utilisée. Vous devez stocker les données Cette méthode est appelée lorsque la fonction feof() est utilisée. Vous devez retourner TRUE si la position de lecture se situe à la fin du fichier et s'il n'y a plus de données disponibles pour la lecture, ou bien FALSE sinon. int stream_tell ( void )Cette méthode est appelée lorsque la fonction ftell() est utilisée. Vous devez retourner la position actuelle du pointeur de lecture/écriture dans le flux. bool stream_seek ( int offset, int whence )
Cette méthode est appelée lorsque la fonction fseek()
est utilisée. Vous devez modifier la position du pointeur de lecture/écriture
en fonction des paramètres d'offset Cette méthode est appelée lorsque la fonction fflush() est utilisée. Si vous avez mis des données dans un système de cache pour votre flux, mais qu'elles ne sont pas encore stockées de manière pérenne, c'est le moment de le faire. Retournez TRUE si les données cachées ont pu être stockées avec succès (il n'y a plus de données à stocker), ou bien FALSE si les données n'ont pu être stockées. array stream_stat ( void )Cette méthode est appelée en réponse à la fonction fstat() sur un flux, et retourne un tableau, avec les valeurs appropriées pour le flux. bool unlink ( string path )
Cette méthode est appelée en réponse à la fonction unlink()
avec une URL, et doit tenter de supprimer l'objet identifié par
Cette méthode est appelée en réponse à la fonction rename()
avec une URL associée avec l'enveloppe et doit tenter de renommer
l'objet identifié par
Cette méthode est appelée en réponse à la fonction mkdir()
avec une URL associée avec l'enveloppe et doit tenter de créer le répertoire
spécifié par
Cette méthode est appelée en réponse à la fonction rmdir()
avec une URL associée avec l'enveloppe et doit tenter de supprimer
le répertoire spécifié par
Cette méthode est appelée immédiatement lorsque votre flux
est créé, pour examiner le contenu d'un dossier avec
opendir(). Cette méthode est appelée en réponse à la fonction stat() avec une URL associée avec l'enveloppe et doit retourner autant d'éléments en commun avec la fonction système que possible. Les valeurs non connues ou non disponibles doivent être définies en une valeur rationnelle (habituellement, 0).
Cette méthode est appelée en réponse à la fonction readdir() et doit retourner une chaîne représentant le prochain fichier ouvert par dir_opendir(). bool dir_rewinddir ( void )Cette méthode est appelée en réponse à rewinddir() et doit remettre à zéro les résultats de dir_readdir(). i.e. : le prochain appel à dir_readdir() doit retourner la première ligne située dans le dossier ouvert par dir_opendir(). bool dir_closedir ( void )Cette méthode est appelée en réponse à closedir(). Vous devez libérer toutes les ressources qui ont été réservées durant l'ouverture et l'utilisation du dossier.
L'exemple ci-dessous implémente un gestionnaire de protocole pour
le protocole var://, qui permet l'écriture et la lecture de variables
globales en utilisant un flux de fichier standard, et les fonctions
classiques telles que fread().
Le protocole var:// implémenté ci-dessous, étant donné l'URL
var://foo va écrire ou lire les données dans
|

