Files
php-doc-ru/reference/filesystem/functions/glob.xml
Mikhail Alferov a50a39cc6a Update glob.xml
2024-04-21 23:20:48 +03:00

166 lines
5.2 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: 850ac483c876e767048222f9133e2498145f9f4a Maintainer: shein Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.glob" xmlns="http://docbook.org/ns/docbook" xmlns:xi="http://www.w3.org/2001/XInclude">
<refnamediv>
<refname>glob</refname>
<refpurpose>Находит файловые пути, совпадающие с шаблоном</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>array</type><type>false</type></type><methodname>glob</methodname>
<methodparam><type>string</type><parameter>pattern</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>0</initializer></methodparam>
</methodsynopsis>
<para>
Функция <function>glob</function> ищет совпавшие
с шаблоном <parameter>pattern</parameter> пути по правилам
функции glob() модуля libc, похожим на
правила распространённых командных оболочек.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>pattern</parameter></term>
<listitem>
<para>
Шаблон. Не происходит раскрытие тильды и подстановка параметров.
</para>
<para>
Специальные символы:
<itemizedlist>
<listitem>
<simpara>
<literal>*</literal> — Соответствует нулю или большему количеству символов.
</simpara>
</listitem>
<listitem>
<simpara>
<literal>?</literal> — Соответствует ровно одному символу (любому символу).
</simpara>
</listitem>
<listitem>
<simpara>
<literal>[...]</literal> — Соответствует одному символу из группы. Если первый символ <literal>!</literal>,
то соответствует любому символу, не входящему в группу
</simpara>
</listitem>
<listitem>
<simpara>
<literal>\</literal> — Экранирует следующий символ,
кроме случаев, когда указан флаг <constant>GLOB_NOESCAPE</constant>.
</simpara>
</listitem>
</itemizedlist>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
Допустимые флаги:
<variablelist>
<xi:include set-xml-id="" xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('constant.glob-constant-variablelist')/*)"><xi:fallback/></xi:include>
</variablelist>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Функция возвращает массив с совпавшими путями файлов и директорий,
пустой массив, если файл не найден, или &false;, если возникла ошибка.
</para>
<note>
<para>
На отдельных системах невозможно отличить отсутствие совпадения
и ошибку.
</para>
</note>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>
Способ подмены функцией <function>glob</function> функции <function>opendir</function> и дружественных функции
</title>
<programlisting role="php">
<![CDATA[
<?php
foreach (glob("*.txt") as $filename) {
echo "$filename размер " . filesize($filename) . "\n";
}
?>
]]>
</programlisting>
&example.outputs.similar;
<screen>
<![CDATA[
funclist.txt размер 44686
funcsummary.txt размер 267625
quickref.txt размер 137820
]]>
</screen>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
&note.no-remote;
<note>
<simpara>
Функция недоступна на некоторых системах (например, старой Sun OS).
</simpara>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>opendir</function></member>
<member><function>readdir</function></member>
<member><function>closedir</function></member>
<member><function>fnmatch</function></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
-->