PHP API: Interface pour les extensions <<< |
Présentation | Eléments de bases >>> |
9.1 API de flôts les auteurs d'extensions 9 PHP API: Interface pour les extensions Manuel PHP ->Présentation . Eléments de bases . Les flôts qui sont des ressources . Référence des API communes de flôts . Streams Dir API Reference . API des flôts pour les fichiers . Streams Socket API Reference . Streams Structures . Constantes de flôts |
9.1.1 Présentation
Les flôts de PHP proposent une approche unifiée à la gestion des fichiers et sockets, depuis une extension PHP. En utilisant l'API standard, les flôts 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 flôts (streams en anglais), sont une API flexible et dynamique, dynamiquement chargée dans les modules (et les scripts!). Le but des flôts 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 flôts 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 flôts peuvent être converti en pilotes pour fichiers, de manière à être utilisé par des librairies tierce-partie avec beaucoup de facilité. Cela autorise ces librairies à 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 flôt PHP à une autre librairie qui utilise les entrée/sortie standard ANSI! |
<< | Présentation | >> |
PHP API: Interface pour les extensions | API de flôts les auteurs d'extensions | Eléments de bases |