1
0
mirror of https://github.com/php/doc-ru.git synced 2026-03-24 07:42:22 +01:00
Files
archived-doc-ru/reference/stream/book.xml

88 lines
4.6 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 98d4a70aac9e7e3663282507f2f9ce014227e39d Maintainer: tmn Status: ready -->
<!-- Reviewed: no -->
<book xml:id="book.stream" xmlns="http://docbook.org/ns/docbook">
<?phpdoc extension-membership="core" ?>
<title>Потоки</title>
<preface xml:id="intro.stream">
&reftitle.intro;
<simpara>
Потоки — способ обобщения операций с файлами, сетевого обмена, сжатия данных
и других операций, которые делят между собой общий набор функций и применений. В простейшем
определении поток (<literal>stream</literal>) — объект ресурса
(<type>resource</type>), который ведёт себя как источник
непрерывной последовательности данных. Поэтому из потока можно
последовательно читать или записывать данные
и искать произвольные места внутри потока функцией <function>fseek</function>.
</simpara>
<simpara>
Обёртка (<literal>wrapper</literal>) — дополнительный код, который
сообщает потоку, как обрабатывать конкретные протоколы или кодировки.
Например, обёртка <literal>http</literal> знает, как
переводить URL-адрес в запрос по протоколу <literal>HTTP/1.0</literal> файла
с удалённого сервера. В PHP по умолчанию встроили набор обёрток,
которые перечисляет раздел «<xref linkend="wrappers"/>»,
а дополнительные пользовательские обёртки можно добавит либо в PHP-скрипт через вызов
функции <function>stream_wrapper_register</function>, либо непосредственно из модуля.
В PHP разрешается добавлять произвольные виды обёрток, поэтому ограничений на операции с обёртками нет.
Доступ к текущему списку обёрток, которые уже зарегистрировали, даёт функция <function>stream_get_wrappers</function>.
</simpara>
<para>
Ссылку на поток записывают вот так:
<parameter>scheme</parameter>://<parameter>target</parameter>
<itemizedlist>
<listitem>
<simpara>
Часть <parameter>scheme</parameter> (строка) — указывает название обёртки.
Примеры включают: file, http, https, ftp, ftps, compress.zlib, compress.bz2
и php. Список встроенных в PHP обёрток приводит раздел
«<xref linkend="wrappers"/>».
Функции устанавливают соединение через обёртку по умолчанию, часто это обёртка
<literal>file</literal>://, если обёртку не указали.
</simpara>
</listitem>
<listitem>
<simpara>
Часть <parameter>target</parameter> — зависит от обёртки.
Для потоков файловой системы в большей части случаев указывают путь и имя файла.
Для сетевых потоков чаще указывают имя хоста, и часто с добавлением пути.
Описание целей для встроенных обёрток снова приводит раздел «<xref linkend="wrappers"/>».
</simpara>
</listitem>
</itemizedlist>
</para>
</preface>
&reference.stream.setup;
&reference.stream.constants;
&reference.stream.filters;
&reference.stream.contexts;
&reference.stream.errors;
&reference.stream.examples;
&reference.stream.php-user-filter;
&reference.stream.streamwrapper;
&reference.stream.reference;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->