API PHP : Interface pour les extensions <<< |
Présentation | Eléments de bases >>> |
10.1 API de flux les auteurs d'extensions 10 API PHP : Interface pour les extensions Manuel PHP ->Présentation . Eléments de bases . Les flux qui sont des ressources . Référence des API communes de flux . Streams Dir API Reference . API des flux pour les fichiers . Références des flux socket . Streams Structures . Constantes de flux |
10.1.1 Présentation
Les flux de PHP proposent une approche unifiée à la gestion des fichiers et sockets, depuis une extension PHP. En utilisant l'API standard, les flux vous permettent d'accéder à des fichiers, des sockets, des URL, de la mémoire ou encore des objets définis dans des scripts. Les flux (streams en anglais), sont une API flexible et dynamique, dynamiquement chargée dans les modules (et les scripts!). Le but des flux est de proposer une API confortables pour les programmeurs, lors des manipulations de fichiers, URL et autres sources de données linéaires. L'API unifiée est très simple à comprendre : elle est plus ou moins basée sur la famille de fonction classiques C d'entrée/sortie (avec les mêmes concepts pour la plupart des fonctions) : les programmeurs C ne seront pas dépaysés. L'API des flux intervient à différents niveaux : à la base, elle définit un objet php_stream, qui représente les sources de données. A un niveau au-dessus, l'API défini un objet php_stream_wrapper qui s'interface avec l'API de bas niveau, pour lire et écrire les données et méta données, dans les sources. Les flux peuvent être converti en pilotes pour fichiers, de manière à être utilisé par des bibliothèques tierce-partie avec beaucoup de facilité. Cela autorise ces bibliothèques à accéder aux données directement depuis des sources représentées par des URL. Si votre système supporte la fonction fopencookie , vous pouvez même passer n'importe quel flux PHP à une autre bibliothèque qui utilise les entrée/sortie standard ANSI!
|
<< | Présentation | >> |
API PHP : Interface pour les extensions | API de flux les auteurs d'extensions | Eléments de bases |