PHP array_replace() -funktio
esimerkki
korvata ensimmäisen taulukon ($a1) arvot toisen taulukon ($a2) arvoilla:
<?php $a1=array("red","green"); $a2=array("blue","yellow"); print_r(array_replace($a1,$a2)); ?>
määrittely ja käyttö
array_replace() -funktio käyttää myöhemmän taulukon arvoja korvata ensimmäisen taulukon arvot.
Vinkki:Voit antaa funktiolle taulukon tai useita taulukoita.
jos avain on ensimmäisessä taulukossa array1 on myös toisessa taulukossa array2ensimmäinen taulukko array1 korvataan toisen taulukon arvolla. array2 ensimmäisessä taulukossa olevan arvon korvaamiseksi. array1se säilyy muuttumattomana. (Katso alla oleva esimerkki 1)
jos avain on toisessa taulukossa array2oleva, mutta ei ensimmäisessä taulukossa array1ensimmäisessä taulukossa array1 elementtiä luodessa. (Katso alla oleva esimerkki 2)
Jos on annettu useita korvaustaulukoita, ne käsitellään järjestyksessä, ja myöhemmien taulukkojen arvot korvaavat edellisten taulukkojen arvot. (Katso alla oleva esimerkki 3)
Vinkki:Käytä array_replace_recursive() käyttääksesi rekursiivisesti myöhemmän taulukon arvoja korvata ensimmäisen taulukon arvot.
syntaksi
array_replace(array1,array2,array3...)
parametrit | kuvaus |
---|---|
array1 | pakollinen. Määritä taulukko. |
array2 | valinnainen. Määritä korvattava array1 arvojen taulukko. |
array3,... | valinnainen. Määritä useita korvattavia array1 ja array2arvojen taulukko. Taulukon arvot korvaavat edellisen taulukon arvot. |
Tekninen yksityiskohta
Palautusarvo: | 返回被替换的数组,如果发生错误则返回 NULL。 |
PHP 版本: | 5.3.0+ |
更多实例
例子 1
如果一个键存在于 array1 中同时也存在于 array2 中,第一个数组的值将被第二个数组中的值替换:
<?php $a1=array("a"=>"red","b"=>"green"); $a2=array("a"=>"orange","burgundy"); print_r(array_replace($a1,$a2)); ?>
例子 2
如果一个键仅存在于第二个数组中:
<?php $a1=array("a"=>"red","green"); $a2=array("a"=>"orange","b"=>"burgundy"); print_r(array_replace($a1,$a2)); ?>
例子 3
使用三个数组 - 最后一个数组($a3)会覆盖之前的数组($a1 和 $a2):
<?php $a1=array("red","green"); $a2=array("blue","yellow"); $a3=array("orange","burgundy"); print_r(array_replace($a1,$a2,$a3)); ?>
例子 4
使用数值键 - 如果一个键存在于第二个数组中单不在第一个数组中:
<?php $a1=array("red","green","blue","yellow"); $a2=array(0=>"orange",3=>"burgundy"); print_r(array_replace($a1,$a2)); ?>