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); ?>
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); ?>