<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.14 $ -->
<!-- splitted from ./en/functions/array.xml, last change in rev 1.2 -->
  <refentry id="function.array-unique">
   <refnamediv>
    <refname>array_unique</refname>
    <refpurpose>Removes duplicate values from an array</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Description</title>
     <methodsynopsis>
      <type>array</type><methodname>array_unique</methodname>
      <methodparam><type>array</type><parameter>array</parameter></methodparam>
     </methodsynopsis>
    <para>
     <function>array_unique</function> takes input
     <parameter>array</parameter> and returns a new array
     without duplicate values.
    </para>
    <para>
     Note that keys are preserved. <function>array_unique</function> sorts
     the values treated as string at first, then will keep the first key
     encountered for every value, and ignore all following keys. It does not
     mean that the key of the first related value from the unsorted
     <parameter>array</parameter> will be kept.
    </para>
    <note>
     <simpara>
      Two elements are considered equal if and only if
      <literal>(string) $elem1 === (string) $elem2</literal>. In words:
      when the string representation is the same.
     </simpara>
     <simpara>
      The first element will be used.
     </simpara>
    </note>
    <para>
     <example>
      <title><function>array_unique</function> example</title>
      <programlisting role="php">
<![CDATA[
<?php
$input = array("a" => "green", "red", "b" => "green", "blue", "red");
$result = array_unique($input);
print_r($result);
?>
]]>
      </programlisting>
      &example.outputs;
      <screen role="php">
<![CDATA[
Array
(
    [a] => green
    [0] => red
    [1] => blue
)
]]>
      </screen>
     </example>
    </para>
    <para>
     <example>
      <title><function>array_unique</function> and types</title>
      <programlisting role="php">
<![CDATA[
<?php
$input = array(4, "4", "3", 4, 3, "3");
$result = array_unique($input);
var_dump($result);
?>
]]>
      </programlisting>
      &example.outputs;
      <screen role="php">
<![CDATA[
array(2) {
  [0] => int(4)
  [2] => string(1) "3"
}
]]>
      </screen>
     </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:"../../../../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
-->