cvs: phpdoc-da /reference/array/functions array-search.xml array-udiff-assoc.xml array-udiff-uassoc.xml array-udiff.xml
| From: | Jesper Laursen | Date: | Sun, 24 Oct 2004 14:36:21 +0000 |
| Subject: | cvs: phpdoc-da /reference/array/functions array-search.xml array-udiff-assoc.xml array-udiff-uassoc.xml array-udiff.xml | ||
| Groups: | php.doc.da | ||
| Request: | Send a blank email to doc-da+get-309@lists.php.net to get a copy of this message | ||
lauer Sun Oct 24 10:36:21 2004 EDT
Added files:
/phpdoc-da/reference/array/functions array-search.xml
array-udiff-assoc.xml
array-udiff-uassoc.xml
array-udiff.xml
Log:
Initial translation
http://cvs.php.net/co.php/phpdoc-da/reference/array/functions/array-search.xml?r=1.1&p=1 Index: phpdoc-da/reference/array/functions/array-search.xml +++ phpdoc-da/reference/array/functions/array-search.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.9 Maintainer: lauer Status: ready --> <refentry id="function.array-search"> <refnamediv> <refname>array_search</refname> <refpurpose> Søger arrayet igennem for en given værdi og returnerer den tilhørende nøgle. </refpurpose> </refnamediv> <refsect1> <title>Beskrivelse</title> <methodsynopsis> <type>mixed</type><methodname>array_search</methodname> <methodparam><type>mixed</type><parameter>needle</parameter></methodparam> <methodparam><type>array</type><parameter>haystack</parameter></methodparam> <methodparam choice="opt"><type>bool</type><parameter>strict</parameter></methodparam> </methodsynopsis> <para> Søger <parameter>haystack</parameter> igennem for <parameter>needle</parameter> og returnerer nøglen hvis den blev fundet i array, ellers bliver &false; returneret. </para> <note> <para> Hvis <parameter>needle</parameter> er en streng, vil sammenligningen tage forbehold for store og små bogstaver. </para> </note> <note> <para> Før PHP 4.2.0, returnerede <function>array_search</function> &null; hvis det ikke lykkedes, i stedet for &false;. </para> </note> <para> Hvis den valgfrie tredje parameter <parameter>strict</parameter> er sat til &true; vil <function>array_search</function> også tjekke typerne på <parameter>needle</parameter> i <parameter>haystack</parameter>. </para> <para> Hvis <parameter>needle</parameter> bliver fundet mere end en gang i <parameter>haystack</parameter> vil det første fundne nøgle blive returneret. For at få alle nøgler fra fundne værdier, bruges <function>array_keys</function> med den valgfrie <parameter>search_value</parameter> parameter i stedet. </para> <para> <example> <title><function>array_search</function> eksempel</title> <programlisting role="php"> <![CDATA[ <?php $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); $key = array_search('green', $array); // $key = 2; $key = array_search('red', $array); // $key = 1; ?> ]]> </programlisting> </example> </para> &return.falseproblem; <para> Se også <function>array_keys</function>, <function>array_values</function>, <function>array_key_exists</function> og <function>in_array</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-da/reference/array/functions/array-udiff-assoc.xml?r=1.1&p=1 Index: phpdoc-da/reference/array/functions/array-udiff-assoc.xml +++ phpdoc-da/reference/array/functions/array-udiff-assoc.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.8 Maintainer: lauer Status: ready --> <refentry id="function.array-udiff-assoc"> <refnamediv> <refname>array_udiff_assoc</refname> <refpurpose> Sammensætter forskellen på arrays med et tjek på nøglen, ved hjælp fra en callback funktion </refpurpose> </refnamediv> <refsect1> <title>Beskrivelse</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> returnerer et <type>array</type> som indeholder alle værdier fra <parameter>array1</parameter> som ikke findes i nogen af de andre argumenter. Bemærk at nøglerne også bliver brugt til at finde forskellen modsat <function>array_diff</function> og <function>array_udiff</function>. Sammenligningen af data fra arrays bliver gjort ved en brugervalgt callback funktion. Dette er omvendt måden funktionen <function>array_diff_assoc</function> arbejder på, da den bruger en intern funktion til sammenligning. </para> <para> <example> <title><function>array_udiff_assoc</function> eksempel</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> Resultatet bliver hermed: </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> I vores eksempel ovenfor, kan du se at <literal>"1" => new cr(4)</literal> er til stede i begge array og derfor ikke i det resulterende array. </simpara> <simpara> Til sammenligning bliver den tilføjede callback funktion brugt. Den skal returnere et tal mindre, samme som, eller større end null, hvis det første argument skal bestemmes til at være enten mindre end, det samme som, eller større end det andet argument. </simpara> <note> <simpara> Bemærk også at denne funktion kun tjekker en dimension af et fler-dimensioneret array. Man kan selvfølgelig tjekke dybere i dimensionerne ved at bruge f.eks. <literal>array_udiff_assoc($array1[0], $array2[0], "some_comparison_func");</literal>. </simpara> </note> <para> Se også <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> og <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-da/reference/array/functions/array-udiff-uassoc.xml?r=1.1&p=1 Index: phpdoc-da/reference/array/functions/array-udiff-uassoc.xml +++ phpdoc-da/reference/array/functions/array-udiff-uassoc.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.10 Maintainer: lauer Status: ready --> <refentry id="function.array-udiff-uassoc"> <refnamediv> <refname>array_udiff_uassoc</refname> <refpurpose> Sammensætter forskellen på arrays med et ekstra tjek på nøgler og både værdier og nøgler bliver tjekket ved hjælp af en callback funktion. </refnamediv> <refsect1> <title>Beskrivelse</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> returnerer et <type>array</type> der indeholder alle værdier fra <parameter>array1</parameter> som ikke findes i nogen af de andre argumenter. Bemærk at nøglerne bliver brugt til sammenligningen hvilket er modsat <function>array_diff</function> and <function>array_udiff</function>. Sammenligningen af arrays bliver gjort ved en brugertilføjet callback funktion: <parameter>data_compare_func</parameter>. Dette er til forskel frem for <function>array_diff_assoc</function> hvilket bruger en intern funktion til sammenligningen. Nøglerne bliver tjekke ved callback funktionen <parameter>key_compare_func</parameter>. Denne ting er modsat hvad <function>array_udiff_assoc</function> gør, da den sidste sammenligner nøglerne ved brug af en intern funktion i php. </para> <para> <example> <title><function>array_udiff_uassoc</function> eksempel</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> Resultatet bliver følgende: </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> I vores eksempel ovenfor, kan du se at <literal>"1" => new cr(4)</literal> indgår i begge arrays og derfor vil det ikke fremgå i det resulterende array. Husk at du skal tilføje 2 callback funktioner. </simpara> <simpara> Til sammenligning bliver den tilføjede callback funktion brugt. Den skal returnere et tal mindre, samme som, eller større end null, hvis det første argument skal bestemmes til at være enten mindre end, det samme som, eller større end det andet argument. </simpara> <note> <simpara> Bemærk også at denne funktion kun tjekker en dimension af et fler-dimensioneret array. Man kan selvfølgelig tjekke dybere i dimensionerne ved at bruge f.eks. <literal>array_udiff_uassoc($array1[0], $array2[0], "data_compare_func", "key_compare_func");</literal>. </simpara> </note> <para> Se også <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> og <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-da/reference/array/functions/array-udiff.xml?r=1.1&p=1 Index: phpdoc-da/reference/array/functions/array-udiff.xml +++ phpdoc-da/reference/array/functions/array-udiff.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.8 Maintainer: lauer Status: ready --> <refentry id="function.array-udiff"> <refnamediv> <refname>array_udiff</refname> <refpurpose> Sammensætter forskellen mellem arrays ved brug af en callback funktion ved værdierne. </refpurpose> </refnamediv> <refsect1> <title>Beskrivelse</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> returnerer et array som indeholder alle værdierne fra <parameter>array1</parameter> som ikke er til stede i nogen af de andre argumenter. Nøglerne følger direkte med deres værdier. For sammenligningen af data bliver <parameter>data_compare_func</parameter> brugt. Den skal returnere et tal mindre, samme som, eller større end null, hvis det første argument skal bestemmes til at være enten mindre end, det samme som, eller større end det andet argument. Dette virker modsat <function>array_diff</function> som bruger en intern php funktion til sammenligningen af værdierne. </para> <para> <example> <title><function>array_udiff</function> eksempel</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> Resultatet af dette script er: </para> <screen> <![CDATA[ Array ( [0.5] => cr Object ( [priv_member:private] => 12 ) [0] => cr Object ( [priv_member:private] => 23 ) ) ]]> </screen> </example> </para> <note> <simpara> To elementer bliver betegnet som ens, hvis og kun hvis (string) $elem1 === (string) $elem2</literal>. Med andre ord: når strengværdien er den samme. </simpara> </note> <note> <simpara> Bemærk også at denne funktion kun tjekker en dimension af et fler-dimensioneret array. Man kan selvfølgelig tjekke dybere i dimensionerne ved at bruge <literal>array_udiff($array1[0], $array2[0], "data_compare_func");</literal>. </simpara> </note> <para> Se også <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> og <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-da/reference/array/functions/array-search.xml?r=1.1&p=1 Index: phpdoc-da/reference/array/functions/array-search.xml +++ phpdoc-da/reference/array/functions/array-search.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.9 Maintainer: lauer Status: ready --> <refentry id="function.array-search"> <refnamediv> <refname>array_search</refname> <refpurpose> Søger arrayet igennem for en given værdi og returnerer den tilhørende nøgle. </refpurpose> </refnamediv> <refsect1> <title>Beskrivelse</title> <methodsynopsis> <type>mixed</type><methodname>array_search</methodname> <methodparam><type>mixed</type><parameter>needle</parameter></methodparam> <methodparam><type>array</type><parameter>haystack</parameter></methodparam> <methodparam choice="opt"><type>bool</type><parameter>strict</parameter></methodparam> </methodsynopsis> <para> Søger <parameter>haystack</parameter> igennem for <parameter>needle</parameter> og returnerer nøglen hvis den blev fundet i array, ellers bliver &false; returneret. </para> <note> <para> Hvis <parameter>needle</parameter> er en streng, vil sammenligningen tage forbehold for store og små bogstaver. </para> </note> <note> <para> Før PHP 4.2.0, returnerede <function>array_search</function> &null; hvis det ikke lykkedes, i stedet for &false;. </para> </note> <para> Hvis den valgfrie tredje parameter <parameter>strict</parameter> er sat til &true; vil <function>array_search</function> også tjekke typerne på <parameter>needle</parameter> i <parameter>haystack</parameter>. </para> <para> Hvis <parameter>needle</parameter> bliver fundet mere end en gang i <parameter>haystack</parameter> vil det første fundne nøgle blive returneret. For at få alle nøgler fra fundne værdier, bruges <function>array_keys</function> med den valgfrie <parameter>search_value</parameter> parameter i stedet. </para> <para> <example> <title><function>array_search</function> eksempel</title> <programlisting role="php"> <![CDATA[ <?php $array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red'); $key = array_search('green', $array); // $key = 2; $key = array_search('red', $array); // $key = 1; ?> ]]> </programlisting> </example> </para> &return.falseproblem; <para> Se også <function>array_keys</function>, <function>array_values</function>, <function>array_key_exists</function> og <function>in_array</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-da/reference/array/functions/array-udiff-assoc.xml?r=1.1&p=1 Index: phpdoc-da/reference/array/functions/array-udiff-assoc.xml +++ phpdoc-da/reference/array/functions/array-udiff-assoc.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.8 Maintainer: lauer Status: ready --> <refentry id="function.array-udiff-assoc"> <refnamediv> <refname>array_udiff_assoc</refname> <refpurpose> Sammensætter forskellen på arrays med et tjek på nøglen, ved hjælp fra en callback funktion </refpurpose> </refnamediv> <refsect1> <title>Beskrivelse</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> returnerer et <type>array</type> som indeholder alle værdier fra <parameter>array1</parameter> som ikke findes i nogen af de andre argumenter. Bemærk at nøglerne også bliver brugt til at finde forskellen modsat <function>array_diff</function> og <function>array_udiff</function>. Sammenligningen af data fra arrays bliver gjort ved en brugervalgt callback funktion. Dette er omvendt måden funktionen <function>array_diff_assoc</function> arbejder på, da den bruger en intern funktion til sammenligning. </para> <para> <example> <title><function>array_udiff_assoc</function> eksempel</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> Resultatet bliver hermed: </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> I vores eksempel ovenfor, kan du se at <literal>"1" => new cr(4)</literal> er til stede i begge array og derfor ikke i det resulterende array. </simpara> <simpara> Til sammenligning bliver den tilføjede callback funktion brugt. Den skal returnere et tal mindre, samme som, eller større end null, hvis det første argument skal bestemmes til at være enten mindre end, det samme som, eller større end det andet argument. </simpara> <note> <simpara> Bemærk også at denne funktion kun tjekker en dimension af et fler-dimensioneret array. Man kan selvfølgelig tjekke dybere i dimensionerne ved at bruge f.eks. <literal>array_udiff_assoc($array1[0], $array2[0], "some_comparison_func");</literal>. </simpara> </note> <para> Se også <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> og <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-da/reference/array/functions/array-udiff-uassoc.xml?r=1.1&p=1 Index: phpdoc-da/reference/array/functions/array-udiff-uassoc.xml +++ phpdoc-da/reference/array/functions/array-udiff-uassoc.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.10 Maintainer: lauer Status: ready --> <refentry id="function.array-udiff-uassoc"> <refnamediv> <refname>array_udiff_uassoc</refname> <refpurpose> Sammensætter forskellen på arrays med et ekstra tjek på nøgler og både værdier og nøgler bliver tjekket ved hjælp af en callback funktion. </refnamediv> <refsect1> <title>Beskrivelse</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> returnerer et <type>array</type> der indeholder alle værdier fra <parameter>array1</parameter> som ikke findes i nogen af de andre argumenter. Bemærk at nøglerne bliver brugt til sammenligningen hvilket er modsat <function>array_diff</function> and <function>array_udiff</function>. Sammenligningen af arrays bliver gjort ved en brugertilføjet callback funktion: <parameter>data_compare_func</parameter>. Dette er til forskel frem for <function>array_diff_assoc</function> hvilket bruger en intern funktion til sammenligningen. Nøglerne bliver tjekke ved callback funktionen <parameter>key_compare_func</parameter>. Denne ting er modsat hvad <function>array_udiff_assoc</function> gør, da den sidste sammenligner nøglerne ved brug af en intern funktion i php. </para> <para> <example> <title><function>array_udiff_uassoc</function> eksempel</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> Resultatet bliver følgende: </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> I vores eksempel ovenfor, kan du se at <literal>"1" => new cr(4)</literal> indgår i begge arrays og derfor vil det ikke fremgå i det resulterende array. Husk at du skal tilføje 2 callback funktioner. </simpara> <simpara> Til sammenligning bliver den tilføjede callback funktion brugt. Den skal returnere et tal mindre, samme som, eller større end null, hvis det første argument skal bestemmes til at være enten mindre end, det samme som, eller større end det andet argument. </simpara> <note> <simpara> Bemærk også at denne funktion kun tjekker en dimension af et fler-dimensioneret array. Man kan selvfølgelig tjekke dybere i dimensionerne ved at bruge f.eks. <literal>array_udiff_uassoc($array1[0], $array2[0], "data_compare_func", "key_compare_func");</literal>. </simpara> </note> <para> Se også <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> og <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-da/reference/array/functions/array-udiff.xml?r=1.1&p=1 Index: phpdoc-da/reference/array/functions/array-udiff.xml +++ phpdoc-da/reference/array/functions/array-udiff.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <!-- EN-Revision: 1.8 Maintainer: lauer Status: ready --> <refentry id="function.array-udiff"> <refnamediv> <refname>array_udiff</refname> <refpurpose> Sammensætter forskellen mellem arrays ved brug af en callback funktion ved værdierne. </refpurpose> </refnamediv> <refsect1> <title>Beskrivelse</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> returnerer et array som indeholder alle værdierne fra <parameter>array1</parameter> som ikke er til stede i nogen af de andre argumenter. Nøglerne følger direkte med deres værdier. For sammenligningen af data bliver <parameter>data_compare_func</parameter> brugt. Den skal returnere et tal mindre, samme som, eller større end null, hvis det første argument skal bestemmes til at være enten mindre end, det samme som, eller større end det andet argument. Dette virker modsat <function>array_diff</function> som bruger en intern php funktion til sammenligningen af værdierne. </para> <para> <example> <title><function>array_udiff</function> eksempel</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> Resultatet af dette script er: </para> <screen> <![CDATA[ Array ( [0.5] => cr Object ( [priv_member:private] => 12 ) [0] => cr Object ( [priv_member:private] => 23 ) ) ]]> </screen> </example> </para> <note> <simpara> To elementer bliver betegnet som ens, hvis og kun hvis (string) $elem1 === (string) $elem2</literal>. Med andre ord: når strengværdien er den samme. </simpara> </note> <note> <simpara> Bemærk også at denne funktion kun tjekker en dimension af et fler-dimensioneret array. Man kan selvfølgelig tjekke dybere i dimensionerne ved at bruge <literal>array_udiff($array1[0], $array2[0], "data_compare_func");</literal>. </simpara> </note> <para> Se også <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> og <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 -->