mirror of
https://github.com/php/doc-ja.git
synced 2026-03-24 07:02:08 +01:00
104 lines
4.6 KiB
XML
104 lines
4.6 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 98d4a70aac9e7e3663282507f2f9ce014227e39d Maintainer: takagi Status: ready -->
|
|
<!-- CREDITS: shimooka,hirokawa -->
|
|
|
|
<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>ストリーム</literal>
|
|
というのは、ストリーミング可能な動作を体現する <type>resource</type>
|
|
オブジェクトといえます。つまり、ストリームには線的に読み出したり、
|
|
あるいは書き込んだりすることが可能で、かつ、
|
|
ストリーム上の任意の場所に <function>fseek</function> できる場合もあります。
|
|
</simpara>
|
|
<simpara>
|
|
<literal>ラッパー</literal> というのは、ストリームにおいてどのように特定の
|
|
プロトコル/エンコーディングを扱うかを扱うかを指示する付加的なコード
|
|
です。たとえば、<literal>http</literal> ラッパーは、どのようにして
|
|
URL を、リモートサーバーのファイルに対する <literal>HTTP/1.0</literal>
|
|
リクエストに転換するかを知っています。PHP
|
|
には、デフォルトで組み込まれているラッパーが多数存在しますが
|
|
(<xref linkend="wrappers"/> を参照ください)、
|
|
それに加え、カスタムラッパーを<function>stream_wrapper_register</function>
|
|
を利用して PHP スクリプトの内部から、あるいはストリーム API を用いて、
|
|
直接拡張モジュールの内部から追加できます。
|
|
あらゆる種類のラッパーが PHP に追加できるので、
|
|
特にラッパーでできることの限界はありません。
|
|
現在登録されているラッパーの種類を知るには、
|
|
<function>stream_get_wrappers</function> を使います。
|
|
</simpara>
|
|
<para>
|
|
リソースは次のような形でストリームとして参照されます: <parameter>scheme</parameter>://<parameter>target</parameter>
|
|
<itemizedlist>
|
|
<listitem>
|
|
<simpara>
|
|
<parameter>scheme</parameter>(string) -
|
|
使用されるラッパーの名称です。例として、
|
|
<literal>file</literal>, <literal>http</literal>, <literal>https</literal>,
|
|
<literal>ftp</literal>, <literal>ftps</literal>,
|
|
<literal>compress.zlib</literal>, <literal>compress.bz2</literal>,
|
|
<literal>php</literal> などが含まれます。
|
|
PHP 組み込みのラッパーについては、<xref linkend="wrappers"/>
|
|
を参照ください。もしラッパーが指定されていない場合は、使用している関数の
|
|
デフォルトが利用されます(通常は <literal>file</literal>://)。
|
|
</simpara>
|
|
</listitem>
|
|
<listitem>
|
|
<simpara>
|
|
<parameter>target</parameter> -
|
|
使用するラッパーによって解釈が異なります。
|
|
ファイルシステムに関連したストリームの場合、
|
|
一般的にこのパラメータは対象となるファイルの
|
|
ファイル名とパスを表します。
|
|
ネットワークに関連したストリームの場合、一般的に
|
|
このパラメータはホスト名と、(多くの場合付加されるはずの) パス名です。
|
|
PHP 組み込みのラッパーに、どのようにターゲットが解釈されるかは、
|
|
<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
|
|
-->
|
|
|