<?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.10 $ --> <refentry id="function.fnmatch"> <refnamediv> <refname>fnmatch</refname> <refpurpose>Match filename against a pattern</refpurpose> </refnamediv> <refsect1> <title>Description</title> <methodsynopsis> <type>bool</type><methodname>fnmatch</methodname> <methodparam><type>string</type><parameter>pattern</parameter></methodparam> <methodparam><type>string</type><parameter>string</parameter></methodparam> <methodparam choice="opt"><type>int</type><parameter>flags</parameter></methodparam> </methodsynopsis> <para> <function>fnmatch</function> checks if the passed <parameter>string</parameter> would match the given shell wildcard <parameter>pattern</parameter>. </para> <para> This is especially useful for filenames, but may also be used on regular strings. The average user may be used to shell patterns or at least in their simplest form to <literal>'?'</literal> and <literal>'*'</literal> wildcards so using <function>fnmatch</function> instead of <function>ereg</function> or <function>preg_match</function> for frontend search expression input may be way more convenient for non-programming users. </para> <example> <title> Checking a color name against a shell wildcard pattern. </title> <programlisting role="php"> <![CDATA[ <?php if (fnmatch("*gr[ae]y", $color)) { echo "some form of gray ..."; } ?> ]]> </programlisting> </example> <warning> <para> For now this function is not available on Windows or other non-POSIX compliant systems. </para> </warning> <para> See also <function>glob</function>, <function>ereg</function>, <function>preg_match</function> and the Unix manpage on <literal>fnmatch(3)</literal> for flag names (as long as they are not documented here <!-- TODO hartmut -->). </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:"../../../../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 -->