Sophie

Sophie

distrib > Mandriva > 2008.1 > i586 > by-pkgid > 703d980c580707c382b4e43e25965bc5 > files > 5496

php-manual-pt_BR-5.2.4-1mdv2008.1.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>array_udiff</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="Manual do PHP"
HREF="index.html"><LINK
REL="UP"
TITLE="Arrays"
HREF="ref.array.html"><LINK
REL="PREVIOUS"
TITLE="array_udiff_uassoc"
HREF="function.array-udiff-uassoc.html"><LINK
REL="NEXT"
TITLE="array_uintersect_assoc"
HREF="function.array-uintersect-assoc.html"><META
HTTP-EQUIV="Content-type"
CONTENT="text/html; charset=UTF-8"></HEAD
><BODY
CLASS="refentry"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>Manual do PHP</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="function.array-udiff-uassoc.html"
ACCESSKEY="P"
>Anterior</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="function.array-uintersect-assoc.html"
ACCESSKEY="N"
>Próxima</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="function.array-udiff"
></A
>array_udiff</H1
><DIV
CLASS="refnamediv"
><A
NAME="AEN11824"
></A
><P
>    (PHP 5)</P
>array_udiff&nbsp;--&nbsp;Computes the difference of arrays by using a callback function for data comparison</DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN11827"
></A
><H2
>Description</H2
>array <B
CLASS="methodname"
>array_udiff</B
> ( array array1, array array2 [, array ..., callback data_compare_func] )<BR
></BR
><P
>&#13;   <B
CLASS="function"
>array_udiff()</B
> returns an array
   containing all the values of <CODE
CLASS="parameter"
>array1</CODE
>
   that are not present in any of the other arguments.
   Note that keys are preserved. For the comparison of the data
   <CODE
CLASS="parameter"
>data_compare_func</CODE
> is used.
   It must return an integer less than, equal
   to, or greater than zero if the first argument is considered to
   be respectively less than, equal to, or greater than the
   second. This is unlike <A
HREF="function.array-diff.html"
><B
CLASS="function"
>array_diff()</B
></A
> which uses an
   internal function for comparing the data.
  </P
><P
>&#13;   <TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
CLASS="EXAMPLE"
><TR
><TD
><DIV
CLASS="example"
><A
NAME="AEN11850"
></A
><P
><B
>Exemplo 1. <B
CLASS="function"
>array_udiff()</B
> example</B
></P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><code><font color="#000000">
<font color="#0000BB">&lt;?php<br /></font><font color="#007700">class </font><font color="#0000BB">cr </font><font color="#007700">{<br />&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">private $priv_member</font><font color="#007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;function </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">$val</font><font color="#007700">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</font><font color="#0000BB">$this</font><font color="#007700">-&gt;</font><font color="#0000BB">priv_member </font><font color="#007700">= </font><font color="#0000BB">$val</font><font color="#007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br /><br />&nbsp;&nbsp;&nbsp;&nbsp;function </font><font color="#0000BB">comp_func_cr</font><font color="#007700">(</font><font color="#0000BB">$a</font><font color="#007700">, </font><font color="#0000BB">$b</font><font color="#007700">)<br />&nbsp;&nbsp;&nbsp;&nbsp;{<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if (</font><font color="#0000BB">$a</font><font color="#007700">-&gt;</font><font color="#0000BB">priv_member </font><font color="#007700">=== </font><font color="#0000BB">$b</font><font color="#007700">-&gt;</font><font color="#0000BB">priv_member</font><font color="#007700">) return </font><font color="#0000BB">0</font><font color="#007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return (</font><font color="#0000BB">$a</font><font color="#007700">-&gt;</font><font color="#0000BB">priv_member </font><font color="#007700">&gt; </font><font color="#0000BB">$b</font><font color="#007700">-&gt;</font><font color="#0000BB">priv_member</font><font color="#007700">)? </font><font color="#0000BB">1</font><font color="#007700">:-</font><font color="#0000BB">1</font><font color="#007700">;<br />&nbsp;&nbsp;&nbsp;&nbsp;}<br />}<br /></font><font color="#0000BB">$a </font><font color="#007700">= array(</font><font color="#DD0000">"0.1" </font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">9</font><font color="#007700">), </font><font color="#DD0000">"0.5" </font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">12</font><font color="#007700">), </font><font color="#0000BB">0 </font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">23</font><font color="#007700">), </font><font color="#0000BB">1</font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">4</font><font color="#007700">), </font><font color="#0000BB">2 </font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(-</font><font color="#0000BB">15</font><font color="#007700">),);<br /></font><font color="#0000BB">$b </font><font color="#007700">= array(</font><font color="#DD0000">"0.2" </font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">9</font><font color="#007700">), </font><font color="#DD0000">"0.5" </font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">22</font><font color="#007700">), </font><font color="#0000BB">0 </font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">3</font><font color="#007700">), </font><font color="#0000BB">1</font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(</font><font color="#0000BB">4</font><font color="#007700">), </font><font color="#0000BB">2 </font><font color="#007700">=&gt; new </font><font color="#0000BB">cr</font><font color="#007700">(-</font><font color="#0000BB">15</font><font color="#007700">),);<br /><br /></font><font color="#0000BB">$result </font><font color="#007700">= </font><font color="#0000BB">array_udiff</font><font color="#007700">(</font><font color="#0000BB">$a</font><font color="#007700">, </font><font color="#0000BB">$b</font><font color="#007700">, array(</font><font color="#DD0000">"cr"</font><font color="#007700">, </font><font color="#DD0000">"comp_func_cr"</font><font color="#007700">));<br /></font><font color="#0000BB">print_r</font><font color="#007700">(</font><font color="#0000BB">$result</font><font color="#007700">);<br /></font><font color="#0000BB">?&gt;</font>
</font>
</code></TD
></TR
></TABLE
><P
>O exemplo acima irá imprimir:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><PRE
CLASS="screen"
>Array
(
    [0.5] =&#62; cr Object
        (
            [priv_member:private] =&#62; 12
        )

    [0] =&#62; cr Object
        (
            [priv_member:private] =&#62; 23
        )

)</PRE
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
>
  </P
><DIV
CLASS="note"
><BLOCKQUOTE
CLASS="note"
><P
><B
>Nota: </B
>
    Please note that this function only checks one dimension of a n-dimensional
    array. Of course you can check deeper dimensions by using
    <TT
CLASS="literal"
>array_udiff($array1[0], $array2[0], "data_compare_func");</TT
>.
   </P
></BLOCKQUOTE
></DIV
><P
>&#13;   See also
   <A
HREF="function.array-diff.html"
><B
CLASS="function"
>array_diff()</B
></A
>,
   <A
HREF="function.array-diff-assoc.html"
><B
CLASS="function"
>array_diff_assoc()</B
></A
>,
   <A
HREF="function.array-diff-uassoc.html"
><B
CLASS="function"
>array_diff_uassoc()</B
></A
>,
   <A
HREF="function.array-udiff-assoc.html"
><B
CLASS="function"
>array_udiff_assoc()</B
></A
>,
   <A
HREF="function.array-udiff-uassoc.html"
><B
CLASS="function"
>array_udiff_uassoc()</B
></A
>,
   <A
HREF="function.array-intersect.html"
><B
CLASS="function"
>array_intersect()</B
></A
>,
   <A
HREF="function.array-intersect-assoc.html"
><B
CLASS="function"
>array_intersect_assoc()</B
></A
>,
   <A
HREF="function.array-uintersect.html"
><B
CLASS="function"
>array_uintersect()</B
></A
>,
   <A
HREF="function.array-uintersect-assoc.html"
><B
CLASS="function"
>array_uintersect_assoc()</B
></A
> and
   <A
HREF="function.array-uintersect-uassoc.html"
><B
CLASS="function"
>array_uintersect_uassoc()</B
></A
>.
  </P
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="function.array-udiff-uassoc.html"
ACCESSKEY="P"
>Anterior</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Principal</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="function.array-uintersect-assoc.html"
ACCESSKEY="N"
>Próxima</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>array_udiff_uassoc</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="ref.array.html"
ACCESSKEY="U"
>Acima</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>array_uintersect_assoc</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>