Files
php-doc-ru/reference/stream/functions/stream-bucket-prepend.xml
2024-01-22 12:11:27 +03:00

105 lines
3.1 KiB
XML
Raw 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: 54b06426830ad1c96a042a848f40916b42f30d48 Maintainer: rjhdby Status: ready -->
<!-- Reviewed: no -->
<!-- Generated by xml_proto.php v2.2. Found in /scripts directory of phpdoc. -->
<refentry xml:id="function.stream-bucket-prepend" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>stream_bucket_prepend</refname>
<refpurpose>Добавляет бакет в начало бригады</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>void</type><methodname>stream_bucket_prepend</methodname>
<methodparam><type>resource</type><parameter>brigade</parameter></methodparam>
<methodparam><type>object</type><parameter>bucket</parameter></methodparam>
</methodsynopsis>
<para>
Функция может использоваться для добавления бакета в начало бригады бакетов.
Обычно она вызывается из метода <methodname>php_user_filter::filter</methodname>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>brigade</parameter></term>
<listitem>
<para>
<parameter>brigade</parameter> ресурс, указывающий на
<literal>бригаду бакетов</literal>, которая содержит один или
несколько объектов <literal>bucket</literal>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>bucket</parameter></term>
<listitem>
<para>
Бакет.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.void;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Примеры использования <function>stream_bucket_prepend</function></title>
<programlisting role="php">
<![CDATA[
<?php
class foo extends php_user_filter {
protected $calls = 0;
public function filter($in, $out, &$consumed, $closing) {
while ($bucket = stream_bucket_make_writeable($in)) {
$consumed += $bucket->datalen;
if ($this->calls++ == 2) {
// Бакет снова появится перед любым другим бакетом.
stream_bucket_prepend($in, $bucket);
}
}
return PSFS_FEED_ME;
}
}
stream_filter_register('test', 'foo');
print file_get_contents('php://filter/read=test/resource=foo');
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
</refentry>
<!-- 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
-->