cvs: phpdoc-sk /reference/array/functions array-diff-uassoc.xml array-udiff-assoc.xml array-udiff-uassoc.xml array-udiff.xml
[email protected] ("Joseph Drake") Thu, 12 Feb 2004 00:17:55 -0000
| Newsgroups | php.doc.sk |
|---|---|
| Message-ID | <cvsjoseph1076545075@cvsserver> |
joseph Wed Feb 11 19:17:55 2004 EDT
Added files:
/phpdoc-sk/reference/array/functions array-diff-uassoc.xml
array-udiff-assoc.xml
array-udiff-uassoc.xml
array-udiff.xml
Log:
new function
joseph-20040211191755.txt
(text/plain, 18.3 KB)
http://cvs.php.net/co.php/phpdoc-sk/reference/array/functions/array-diff-uassoc.xml?r=1.1&p=1
Index: phpdoc-sk/reference/array/functions/array-diff-uassoc.xml
+++ phpdoc-sk/reference/array/functions/array-diff-uassoc.xml
<?xml version="1.0" encoding="iso-8859-2"?>
<!-- EN-Revision: 1.3 Maintainer: joseph Status: ready -->
<!-- splitted from ./en/functions/array.xml, last change in rev 1.14 -->
<refentry id="function.array-diff-uassoc">
<refnamediv>
<refname>array_diff_uassoc</refname>
<refpurpose>Vypoèíta rozdiel polí s dodatoènou kontrolou indexov, ktorú vykoná u¾ívateµom urèená callback funkcia.</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<methodsynopsis>
<type>array</type><methodname>array_diff_assoc</methodname>
<methodparam><type>array</type><parameter>array1</parameter></methodparam>
<methodparam><type>array</type><parameter>array2</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> vracia <type>array</type>
obsahujúce v¹etky hodnoty z <parameter>array1</parameter>,
ktoré sa nenachádzajú v ¾iadnom inom argumente.
Upozoròujeme na to, ¾e kµúèe sa pou¾ívajú v porovnávaní, na rozdiel od
<function>array_diff</function>. Toto porovnanie sa urobí pomocou u¾ívateµom urèenej callback funkcie.
Musí vráti» integer men¹í ne¾, rovný alebo väè¹í ne¾
nula, ak je prvý argument pova¾ovaný v poradí men¹í
ne¾, rovný, alebo väè¹í ne¾ druhý. V tomto je odli¹no¹»
s funkciou <function>array_diff_assoc</function>, kde
je pre porvonávanie indexov pou¾itá vnútorná funkcia.
</para>
<para>
<example>
<title><function>array_diff_uassoc</function> príklad</title>
<programlisting role="php">
<![CDATA[
<?php
function key_compare_func($a, $b)
{
if ($a === $b) {
return 0;
}
return ($a > $b)? 1:-1;
}
$array1 = array("a" => "zelena", "b" => "hneda", "c" => "modra", "cervena");
$array2 = array("a" => "zelena", "zlta", "cervena");
$result = array_diff_uassoc($array1, $array2, "key_compare_func");
?>
]]>
</programlisting>
<para>
Výsledok je:
</para>
<screen>
<![CDATA[
Array
(
[b] => hneda
[c] => modra
[0] => cervena
)
]]>
</screen>
</example>
</para>
<simpara>
V na¹om príklade hore vidíte, ¾e pár <literal>"a" => "zelena"</literal>
sa nachádza v oboch poliach a teda nie je vo výstupe z funkcie.
function. Av¹al pár <literal>0 => "cervena"</literal> vo
výstupe je, preto¾e druhý argument <literal>"cervena"</literal>
má kµúè, ktorý je <literal>1</literal>.
</simpara>
<simpara>
Rovnos» 2 indexov sa kontroluje u¾ívateµom urèenou callback funkciou.
</simpara>
<note>
<simpara>
Upozoròujeme vás na to, ¾e táto funkcia kontroluje iba jednu dimenziu
n-dimenzionálneho poµa. Samozrejme, mô¾ete kontrolova» i hlb¹ie dimenzie
napr. pomocou <literal>array_diff_uassoc($array1[0], $array2[0], "key_compare_func");</literal>.
</simpara>
</note>
<para>
Tie¾ pozri
<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> a
<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:"../../../../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
-->
http://cvs.php.net/co.php/phpdoc-sk/reference/array/functions/array-udiff-assoc.xml?r=1.1&p=1
Index: phpdoc-sk/reference/array/functions/array-udiff-assoc.xml
+++ phpdoc-sk/reference/array/functions/array-udiff-assoc.xml
<?xml version="1.0" encoding="iso-8859-2"?>
<!-- EN-Revision: 1.6 Maintainer: joseph Status: ready -->
<!-- splitted from ./en/functions/array.xml, last change in rev 1.14 -->
<refentry id="function.array-udiff-assoc">
<refnamediv>
<refname>array_udiff_assoc</refname>
<refpurpose>Vypoèíta rozdiel polí s dodatoènou kontrolou indexov. Dáta sa porovnávajú pomocou callback funkcie.</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<methodsynopsis>
<type>array</type><methodname>array_udiff_assoc</methodname>
<methodparam><type>array</type><parameter>array1</parameter></methodparam>
<methodparam><type>array</type><parameter>array2</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter> ...</parameter></methodparam>
<methodparam><type>callback</type><parameter>data_compare_func</parameter></methodparam>
</methodsynopsis>
<para>
<function>array_udiff_assoc</function> vracia <type>array</type>
obsahujúce v¹etky hodnoty z <parameter>array1</parameter>,
ktoré sa nenachádzajú v ¾iadnom inom argumente.
Upozoròujeme na to, ¾e kµúèe sa pou¾ívajú v porovnávaní, na rozdiel od
<function>array_diff</function> a <function>array_udiff</function>.
Porovnávanie dát polí sa vykoná pomocou u¾ívateµom urèenej callback
funkcie. V tomto aspekte je správanie opaèné správaniu
<function>array_diff_assoc</function>, ktorá na porovnávanie pou¾íva
vnútornú funkciu.
</para>
<para>
<example>
<title><function>array_udiff_assoc</function> príklad</title>
<programlisting role="php">
<![CDATA[
<?php
class cr {
private $priv_member;
function cr($val)
{
$this->priv_member = $val;
}
function comp_func_cr($a, $b)
{
if ($a->priv_member === $b->priv_member) return 0;
return ($a->priv_member > $b->priv_member)? 1:-1;
}
}
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);
$result = array_udiff_assoc($a, $b, array("cr", "comp_func_cr"));
print_r($result);
?>
]]>
</programlisting>
<para>
Výsledok je:
</para>
<screen>
<![CDATA[
Array
(
[0.1] => cr Object
(
[priv_member:private] => 9
)
[0.5] => cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
]]>
</screen>
</example>
</para>
<simpara>
V na¹om príklade hore vitíte, ¾e pár <literal>"1" => new cr(4)</literal>
sa nachádza v oboch poliach, a teda nie je vo výstupe z funkcie.
</simpara>
<simpara>
Na porovnávanie je pou¾itá u¾ívateµom urèená callback funkcia.
Musí vráti» integer men¹í ne¾, rovný, alebo väè¹í ne¾
nula, ak je prvý argument pova¾ovaný v poradí za men¹í
ne¾, rovný, alebo väè¹í ne¾ druhý.
</simpara>
<note>
<simpara>
Upozoròujeme vás na to, ¾e táto funkcia kontroluje iba jednu dimenziu
n-dimezionálneho poµa. Samozrejme, mô¾ete kontrolova» i hlb¹ie dimenzie
napr. pomocou <literal>array_udiff_assoc($array1[0], $array2[0], "some_comparison_func");</literal>.
</simpara>
</note>
<para>
Tie¾ pozri
<function>array_diff</function>,
<function>array_diff_assoc</function>,
<function>array_diff_uassoc</function>,
<function>array_udiff</function>,
<function>array_udiff_uassoc</function>,
<function>array_intersect</function>,
<function>array_intersect_assoc</function>,
<function>array_uintersect</function>,
<function>array_uintersect_assoc</function> a
<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:"../../../../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
-->
http://cvs.php.net/co.php/phpdoc-sk/reference/array/functions/array-udiff-uassoc.xml?r=1.1&p=1
Index: phpdoc-sk/reference/array/functions/array-udiff-uassoc.xml
+++ phpdoc-sk/reference/array/functions/array-udiff-uassoc.xml
<?xml version="1.0" encoding="iso-8859-2"?>
<!-- EN-Revision: 1.9 Maintainer: joseph Status: ready -->
<!-- splitted from ./en/functions/array.xml, last change in rev 1.14 -->
<refentry id="function.array-udiff-uassoc">
<refnamediv>
<refname>array_udiff_uassoc</refname>
<refpurpose>Vypoèíta rozdiel polí s dodatoènou kontrolou indexov. Dáta sa porovnávajú pomocou callback funkcie. Callback funkcia tie¾ vykoná indexovú kontrolu</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<methodsynopsis>
<type>array</type><methodname>array_udiff_uassoc</methodname>
<methodparam><type>array</type><parameter>array1</parameter></methodparam>
<methodparam><type>array</type><parameter>array2</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter> ...</parameter></methodparam>
<methodparam><type>callback</type><parameter>data_compare_func</parameter></methodparam>
<methodparam><type>callback</type><parameter>key_compare_func</parameter></methodparam>
</methodsynopsis>
<para>
<function>array_udiff_uassoc</function> vracia <type>array</type>
obsahujúce v¹etky hodnoty z <parameter>array1</parameter>,
ktoré sa nenachádzajú v ¾iadnom inom argumente.
Upozoròujeme na to, ¾e kµúèe sú pou¾ité v porovnávaní, na rozdiel od
<function>array_diff</function> a <function>array_udiff</function>.
Porovnávanie dát polí sa vykoná pomocou u¾ívateµom urèenej callback
funkcie : <parameter>data_compare_func</parameter>. V tomto aspekte
je správanie opaèné správaniu
<function>array_diff_assoc</function>, ktorá na porovnávanie pou¾íva
vnútornú funkciu. Porovnávanie kµúèov (indexov) sa vykoná tie¾ pomocou
callback funkcie <parameter>key_compare_func</parameter>. Toto
správanie je odli¹né od <function>array_udiff_assoc</function>, nakoµko
to druhé porovnáva indexy pomocou internej funkcie.
</para>
<para>
<example>
<title><function>array_udiff_uassoc</function> príklad</title>
<programlisting role="php">
<![CDATA[
<?php
class cr {
private $priv_member;
function cr($val)
{
$this->priv_member = $val;
}
function comp_func_cr($a, $b)
{
if ($a->priv_member === $b->priv_member) return 0;
return ($a->priv_member > $b->priv_member)? 1:-1;
}
function comp_func_key($a, $b)
{
if ($a === $b) return 0;
return ($a > $b)? 1:-1;
}
}
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);
$result = array_udiff_uassoc($a, $b, array("cr", "comp_func_cr"), array("cr", "comp_func_key"));
print_r($result);
?>
]]>
</programlisting>
<para>
Výsledok je:
</para>
<screen>
<![CDATA[
Array
(
[0.1] => cr Object
(
[priv_member:private] => 9
)
[0.5] => cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
]]>
</screen>
</example>
</para>
<simpara>
V na¹om príklade hore vidíte, ¾e pár <literal>"1" => new cr(4)</literal>
sa nachádza v oboch poliach, a teda nie je vo výstupe z funkcie.
Majte na pamäti, ¾e musíte urèi» 2 callback funkcie.
</simpara>
<simpara>
Pre porovnávanie sa pou¾íva u¾ívateµom urèená callback funkcia.
Musí vráti» integer men¹í ne¾, rovný, alebo väè¹í ne¾
nula, ak je prvý argument pova¾ovaný v poradí za men¹í,
rovný, alebo väè¹í ne¾ druhý.
</simpara>
<note>
<simpara>
Upozoròujeme vás na to, ¾e táto funkcia kontroluje iba jednu dimenziu
n-dimenzionálneho poµa. Samozrejme, mô¾ete kontrolova» i hlb¹ie dimenzie
napr. pomocou <literal>array_udiff_uassoc($array1[0], $array2[0], "data_compare_func",
"key_compare_func");</literal>.
</simpara>
</note>
<para>
Tie¾ pozri
<function>array_diff</function>,
<function>array_diff_assoc</function>,
<function>array_diff_uassoc</function>,
<function>array_udiff</function>,
<function>array_udiff_assoc</function>,
<function>array_intersect</function>,
<function>array_intersect_assoc</function>,
<function>array_uintersect</function>,
<function>array_uintersect_assoc</function> a
<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:"../../../../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
-->
http://cvs.php.net/co.php/phpdoc-sk/reference/array/functions/array-udiff.xml?r=1.1&p=1
Index: phpdoc-sk/reference/array/functions/array-udiff.xml
+++ phpdoc-sk/reference/array/functions/array-udiff.xml
<?xml version="1.0" encoding="iso-8859-2"?>
<!-- EN-Revision: 1.7 Maintainer: joseph Status: ready -->
<!-- splitted from ./en/functions/array.xml, last change in rev 1.14 -->
<refentry id="function.array-udiff">
<refnamediv>
<refname>array_udiff</refname>
<refpurpose>Vypoèíta rozdiel polí pomocou callback funkcie pre dátové porovnávanie.</refpurpose>
</refnamediv>
<refsect1>
<title>Popis</title>
<methodsynopsis>
<type>array</type><methodname>array_udiff</methodname>
<methodparam><type>array</type><parameter>array1</parameter></methodparam>
<methodparam><type>array</type><parameter>array2</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter> ...</parameter></methodparam>
<methodparam><type>callback</type><parameter>data_compare_func</parameter></methodparam>
</methodsynopsis>
<para>
<function>array_udiff</function> vracia pole
obsahujúce v¹etky hodnoty v <parameter>array1</parameter>,
ktoré sa nenachádzajú v ¾iadnom inom argumente.
Upozoròujeme, ¾e kµúèe sa zachovávajú. Na porovnávanie dát je pou¾itá
<parameter>data_compare_func</parameter>.
Musí vráti» integer men¹í ne¾, rovný, alebo väè¹í ne¾
nula, ak je prvý argument pova¾ovaný v poradí za
men¹í ne¾, rovný, alebo väè¹í ne¾ druhý.
V tomto je odli¹nos» od <function>array_diff</function>, ktorá na
porovnávanie dát pou¾íva vnútornú funkciu.
</para>
<para>
<example>
<title><function>array_udiff</function> príklad</title>
<programlisting role="php">
<![CDATA[
<?php
class cr {
private $priv_member;
function cr($val)
{
$this->priv_member = $val;
}
function comp_func_cr($a, $b)
{
if ($a->priv_member === $b->priv_member) return 0;
return ($a->priv_member > $b->priv_member)? 1:-1;
}
}
$a = array("0.1" => new cr(9), "0.5" => new cr(12), 0 => new cr(23), 1=> new cr(4), 2 => new cr(-15),);
$b = array("0.2" => new cr(9), "0.5" => new cr(22), 0 => new cr(3), 1=> new cr(4), 2 => new cr(-15),);
$result = array_udiff($a, $b, array("cr", "comp_func_cr"));
print_r($result);
?>
]]>
</programlisting>
<para>
Výsledok je:
</para>
<screen>
<![CDATA[
Array
(
[0.5] => cr Object
(
[priv_member:private] => 12
)
[0] => cr Object
(
[priv_member:private] => 23
)
)
]]>
</screen>
</example>
</para>
<note>
<simpara>
Dva prvky sa pova¾ujú za zhodné vtedy a len vtedy ak
<literal>(string) $elem1 === (string) $elem2</literal>. Slovami:
keï je reprezentácia re»azca rovnaká.
</simpara>
</note>
<note>
<simpara>
Upozoròujeme vás na to, ¾e funkcia kontroluje iba jednu dimenziu
n-dimenzionálneho poµa. Samozrejme, mô¾ete kontrolova» i hlb¹ie dimenzie
pomocou <literal>array_udiff($array1[0], $array2[0], "data_compare_func");</literal>.
</simpara>
</note>
<para>
Tie¾ pozri
<function>array_diff</function>,
<function>array_diff_assoc</function>,
<function>array_diff_uassoc</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> a
<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:"../../../../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
-->