<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="messageformatter.parsemessage" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
 <refnamediv>
  <refname>MessageFormatter::parseMessage</refname>
  <refname>msgfmt_parse_message</refname>
  <refpurpose>Quick parse input string</refpurpose>
 </refnamediv>
 
 <refsect1 role="description">
  &reftitle.description;
  <para>
   &style.oop;
  </para>
  <methodsynopsis role="MessageFormatter">
   <modifier>public</modifier> <modifier>static</modifier> <type class="union"><type>array</type><type>false</type></type><methodname>MessageFormatter::parseMessage</methodname>
   <methodparam><type>string</type><parameter>locale</parameter></methodparam>
   <methodparam><type>string</type><parameter>pattern</parameter></methodparam>
   <methodparam><type>string</type><parameter>message</parameter></methodparam>
  </methodsynopsis>
  <para>
   &style.procedural;
  </para>
  <methodsynopsis>
   <type class="union"><type>array</type><type>false</type></type><methodname>msgfmt_parse_message</methodname>
   <methodparam><type>string</type><parameter>locale</parameter></methodparam>
   <methodparam><type>string</type><parameter>pattern</parameter></methodparam>
   <methodparam><type>string</type><parameter>message</parameter></methodparam>
  </methodsynopsis>
  <para>
   Parses input string without explicitly creating the formatter object. Use
   this function when the format operation is done only once and does not need
   any parameters or state to be kept.
  </para>
 </refsect1>
 
 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>locale</parameter></term>
     <listitem>
      <para>
       The locale to use for parsing locale-dependent parts
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>pattern</parameter></term>
     <listitem>
      <para>
       The pattern with which to parse the <parameter>message</parameter>.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>message</parameter></term>
     <listitem>
      <para>
       The <type>string</type> to parse, conforming to the <parameter>pattern</parameter>.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>
 
 
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   An <type>array</type> containing items extracted, or &false; on error
  </para>
 </refsect1>
 
 <refsect1 role="examples">
  &reftitle.examples;
  <example>
   <title><function>msgfmt_parse_message</function> example</title>
   <programlisting role="php">
<![CDATA[
<?php
$fmt = msgfmt_parse_message('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
                            "4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($fmt);

$fmt = msgfmt_parse_message('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum", 
                            "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($fmt);
?>
]]>
   </programlisting>
  </example>
  <example>
   <title>OO example</title>
   <programlisting role="php">
<![CDATA[
<?php
$fmt = MessageFormatter::parseMessage('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
                            "4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($fmt);

$fmt = MessageFormatter::parseMessage('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum", 
                            "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($fmt);
?>
]]>
   </programlisting>
  </example>
  &example.outputs;
  <screen>
<![CDATA[
array (
  0 => 4560,
  1 => 123,
  2 => 37.073,
)
array (
  0 => 4560,
  1 => 123,
  2 => 37.073,
)
]]>
  </screen>
 </refsect1>
 
 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>msgfmt_create</function></member>
    <member><function>msgfmt_format_message</function></member>
    <member><function>msgfmt_parse</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
-->
