Files
php-doc-ru/reference/spl/filesystemiterator/construct.xml
Sergey Panteleev 6d43fd64d7 Исправление форматирования
[skip-spellcheck]
[skip-lint]
2022-12-27 03:42:36 +03:00

168 lines
5.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: a7d00d0b9169ac0ca5e35dbed32ee288f4614586 Maintainer: tmn Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="filesystemiterator.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>FilesystemIterator::__construct</refname>
<refpurpose>
Создаёт новый итератор файловой системы
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<constructorsynopsis role="FilesystemIterator">
<modifier>public</modifier> <methodname>FilesystemIterator::__construct</methodname>
<methodparam><type>string</type><parameter>directory</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS</initializer></methodparam>
</constructorsynopsis>
<para>
Создаёт новый объект итератора файловой системы на основе аргумента
<parameter>directory</parameter>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>directory</parameter></term>
<listitem>
<para>
Путь к объекту файловой системы по которому требуется навигация.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Поведение некоторых методов можно задать с помощью флагов. Список этих
флагов можно найти на странице
<link linkend="filesystemiterator.constants">предопределённых констант
FilesystemIterator</link>. Также их можно задать позже методом
<methodname>FilesystemIterator::setFlags</methodname>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Выбрасывает исключение <classname>UnexpectedValueException</classname>,
если директория <parameter>directory</parameter> не существует.
</para>
<para>
Выбрасывает исключение <classname>ValueError</classname>,
если параметр <parameter>directory</parameter> содержит пустую строку.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.2.0</entry>
<entry>
До версии PHP 8.2.0, константа <constant>FilesystemIterator::SKIP_DOTS</constant>
всегда была установлена и не могла быть удалена.
</entry>
</row>
<row>
<entry>8.0.0</entry>
<entry>
Теперь выбрасывает исключение <classname>ValueError</classname>,
если параметр <parameter>directory</parameter> содержит пустую строку;
ранее выбрасывалось исключение <classname>RuntimeException</classname>.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>
Пример использования <function>FilesystemIterator::__construct</function>
</title>
<programlisting role="php">
<![CDATA[
<?php
$it = new FilesystemIterator(dirname(__FILE__), FilesystemIterator::CURRENT_AS_FILEINFO);
foreach ($it as $fileinfo) {
echo $fileinfo->getFilename() . "\n";
}
?>
]]>
</programlisting>
&example.outputs.82.similar;
<screen>
<![CDATA[
.
..
apples.jpg
banana.jpg
example.php
]]>
</screen>
<para>Вывод приведённого выше примера до версии PHP 8.2.0 выглядит следующим образом:</para>
<screen>
<![CDATA[
apples.jpg
banana.jpg
example.php
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><methodname>FilesystemIterator::setFlags</methodname></member>
<member><methodname>DirectoryIterator::__construct</methodname></member>
</simplelist>
</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
-->