1
0
mirror of https://github.com/php/doc-pl.git synced 2026-03-26 08:02:10 +01:00
Files
archived-doc-pl/reference/array/functions/array-diff-uassoc.xml
Richard Quadling 35ddb289de Reencode XML to UTF-8
git-svn-id: https://svn.php.net/repository/phpdoc/pl/trunk@314597 c90b9560-bf6c-de11-be94-00142212c4b1
2011-08-09 09:34:32 +00:00

121 lines
3.9 KiB
XML
Executable File

<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: n/a Maintainer: leszek Status: ready -->
<!-- $Revision$ -->
<refentry xml:id="function.array-diff-uassoc" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>array_diff_uassoc</refname>
<refpurpose>Computes the difference of arrays with additional index check which is performed by a user supplied callback function</refpurpose>
</refnamediv>
<refsect1>
<title>Opis</title>
<methodsynopsis>
<type>array</type><methodname>array_diff_uassoc</methodname>
<methodparam><type>array</type><parameter>tablica1</parameter></methodparam>
<methodparam><type>array</type><parameter>tablica2</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter>...</parameter></methodparam>
<methodparam><type>callback</type><parameter>key_compare_func</parameter></methodparam>
</methodsynopsis>
<para>
<function>array_diff_uassoc</function> zwraca <type>tablicę</type>
zawierającą wszystkie wartości z <parameter>tablica1</parameter> które
nie są obecne w żadnym z pozostałych argumentów. Do porównania, w
przeciwieństwie do funkcji <function>array_diff</function>, używane sa
klucze tablic.
</para>
<para>
Porównanie jest dokonywane przy pomocy podanej funkcji zwrotnej. Musi ona
zwracać liczbę całkowitą mniejszą, równą lub większą od zera jeśli
pierwszy klucz jest uznawany za mniejszy, równy lub większy drugiego.
Jest to zachowanie inne niż w funkcji
<function>array_diff_assoc</function>, gdzie do porównań kluczy używana
jest wewnętrzna funkcja.
</para>
<para>
<example>
<title>Przykład użycia <function>array_diff_uassoc</function></title>
<programlisting role="php">
<![CDATA[
<?php
function funk_porownujaca($a, $b)
{
if ($a === $b) {
return 0;
}
return ($a > $b)? 1:-1;
}
$tablica1 = array("a" => "zielony", "b" => "brązowy", "c" => "niebieski", "czerwony");
$tablica2 = array("a" => "zielony", "żółty", "czerwony");
$wynik = array_diff_uassoc($tablica1, $tablica2, "funk_porownujaca");
print_r($wynik);
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
Array
(
[b] => brązowy
[c] => niebieski
[0] => czerwony
)
]]>
</screen>
</example>
</para>
<simpara>
W powyższym przykładzie para <literal>"a" =&gt; "zielony"</literal> jest
obecna w obu tablicach, w związku z tym nie jest zwracana przez funkcję.
Z kolei para <literal>0 =&gt; "czerwony"</literal> jest zawarta w wyniku
działania funkcji, ponieważ w drugim argumencie wartość
<literal>"czerwony"</literal> ma klucz <literal>1</literal>.
</simpara>
<simpara>
Równość dwóch indeksów jest sprawdzana przez podaną przez użytkownika
funkcję.
</simpara>
<note>
<simpara>
Funkcja ta sprawdza tylko jeden wymiar n-wymiarowej tablicy. Można
sprawdzać głębsze wymiary przez użycie, na przykład
<literal>array_diff_uassoc($tablica1[0], $tablica2[0], 'funkcja_zwrotna');</literal>.
</simpara>
</note>
<para>
Patrz także:
<function>array_diff</function>,
<function>array_diff_assoc</function>,
<function>array_udiff</function>,
<function>array_udiff_assoc</function>,
<function>array_udiff_uassoc</function>,
<function>array_intersect</function>,
<function>array_intersect_assoc</function>,
<function>array_uintersect</function>,
<function>array_uintersect_assoc</function> i
<function>array_uintersect_uassoc</function>.
</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
-->