Kurssivinkki:

PHP array_udiff() -funktio

Esimerkki

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
Vertaa kahden taulukon avainarvoja (käyttäen mukautettua funktiota avainarvojen vertailuun) ja palauta erojen taulukko:
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$result=$a2=array("a"=>"blue","b"=>"black","e"=>"blue");;
print_r($result);
?>

Suoritettu esimerkki

array_udiff($a1,$a2,"myfunction")

Määrittely ja käyttö

array_udiff() -funktio vertailee kahden (tai useamman) taulukon avainarvoja ja palauttaa erojen taulukon.Huomautus:

Tämä funktio verraa kahden (tai useamman) taulukon avainarvoja ja palauttaa erojen taulukon, joka sisältää kaikki verrattavissa taulukoissa olevat arvot.array1)sisällä, mutta ei missään muussa parametritaulukossa (array2 tai array3 jne.) avaimia.

Selitys

array_udiff() -funktio palauttaa taulukon, joka sisältää kaikki arvot, jotka ovat verrattavissa taulukoissa, mutta eivät ole muiden parametrien taulukoissa, avainsanat säilyvät muuttumattomina.

array_udiff() -funktio on samanlainen kuin array_diff() Funktioiden käyttäytyminen on erilainen, jälkimmäinen käyttää sisäistä funktiota vertailuun.

Tietojen vertailu tapahtuu array_udiff() -funktiolla. myfunction toimii.myfunction Funktio sisältää kaksi parametria, joita vertaillaan. Jos ensimmäinen parametri on pienempi kuin toinen, funktio palauttaa negatiivisen luvun, jos parametrit ovat yhtä suuret, palauttaa 0, ja jos ensimmäinen parametri on suurempi kuin toinen, palauttaa positiivisen luvun.

语法

array_udiff(array1,array2,array3...myfunction)}}
Parametrit Kuvaus
array1 Välttämätön. Vertailtava taulukko ensimmäisen taulukon kanssa.
array2 Välttämätön. Vertailtava taulukko ensimmäisen taulukon kanssa.
array3,... Valinnainen. Vertailtava taulukko ensimmäisen taulukon kanssa.
myfunction

Välttämätön. Merkkijonoväli, joka määrittelee kutsuttavan vertailufunktion.

Jos ensimmäinen parametri on pienempi tai suurempi kuin toinen parametri, verrausfunktion on palautettava pienempi tai suurempi kuin 0 oleva kokonaisluku.

Tekninen yksityiskohta

Palautusarvo: Palauttaa erojen taulukon, joka sisältää kaikki vertailtavissa olevissa taulukoissa (array1)sisällä, mutta ei missään muussa parametritaulukossa (array2 tai array3 jne.) avaimia.
PHP versio: 5.1.0+

Lisää esimerkkejä

Esimerkki 1

Vertaa kolmen taulukon avaimia ja arvoja (käyttäen käyttäjän määrittämää vertailufunktiota) ja palauta ero:

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue","yellow");
$a2=array("A"=>"red","b"=>"GREEN","yellow","black");
$a3=array("a"=>"green","b"=>"red","yellow","black");
$result=array_udiff($a1,$a2,$a3,"myfunction");
print_r($result);
?>

Suoritettu esimerkki