Maison >développement back-end >Problème PHP >Quelles sont les fonctions de remplacement du tableau php ?

Quelles sont les fonctions de remplacement du tableau php ?

青灯夜游
青灯夜游original
2021-06-02 18:05:452960parcourir

Les fonctions de remplacement de tableau PHP incluent : 1. la fonction array_replace(), qui utilise la valeur du tableau suivant pour remplacer la valeur du premier tableau ; 2. la fonction array_replace_recursive(), qui utilise de manière récursive la valeur du tableau suivant ; tableau suivant pour remplacer le premier. La valeur du tableau ; 3. fonction array_splice().

Quelles sont les fonctions de remplacement du tableau php ?

L'environnement d'exploitation de ce tutoriel : système Windows7, version PHP7.1, ordinateur DELL G3

1. function

array_replace() remplace la valeur du premier tableau par la valeur du tableau suivant. La syntaxe est la suivante :

array_replace(array1,array2,array3...)

  • Si une clé existe dans le premier tableau array1 et existe également dans le deuxième tableau array2, la valeur dans le premier tableau array1 sera remplacée par la seconde array Remplacez les valeurs dans array2.

  • Si une clé n'existe que dans le premier tableau array1, elle restera inchangée.

  • Si une clé existe dans le deuxième tableau array2 mais pas dans le premier tableau array1, l'élément sera créé dans le premier tableau array1.

  • Si plusieurs tableaux de remplacement sont transmis, ils seront traités dans l'ordre et les valeurs des tableaux suivants écraseront les valeurs des tableaux précédents.

Exemple 1 : Si une clé existe dans le tableau1 et existe également dans le tableau2, la valeur du premier tableau sera remplacée par la valeur du deuxième tableau

<?php
$a1=array("a"=>"red","b"=>"green");
$a2=array("a"=>"orange","burgundy");
print_r(array_replace($a1,$a2));
?>

Sortie :


Array ( [a] => orange [b] => green [0] => burgundy )

Exemple 2 : Si une clé n'existe que dans le deuxième tableau :

<?php
$a1=array("a"=>"red","green");
$a2=array("a"=>"orange","b"=>"burgundy");
print_r(array_replace($a1,$a2));
?>

Sortie :

Array ( [a] => orange [0] => green [b] => burgundy )

2, fonction array_replace_recursive()

La fonction array_replace_recursive() remplace récursivement la valeur du premier tableau par la valeur du tableau suivant. La syntaxe est la suivante :

array_replace_recursive(array1,array2,array3...)

Exemple : Plusieurs tableaux

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"));
$a2=array("a"=>array("yellow"),"b"=>array("black"));
$a3=array("a"=>array("orange"),"b"=>array("burgundy"));
print_r(array_replace_recursive($a1,$a2,$a3));
?>

Sortie :


Array ( [a] => Array ( [0] => orange ) [b] => Array ( [0] => burgundy [1] => blue ) )

Description : La différence entre array_replace() et array_replace_recursive() :

<?php
$a1=array("a"=>array("red"),"b"=>array("green","blue"),);
$a2=array("a"=>array("yellow"),"b"=>array("black"));

$result=array_replace_recursive($a1,$a2);
print_r($result);

$result=array_replace($a1,$a2);
print_r($result);
?>

Sortie :


Array ( [a] => Array ( [0] => yellow ) [b] => Array ( [0] => black [1] => blue ) ) 
Array ( [a] => Array ( [0] => yellow ) [b] => Array ( [0] => black ) )

3. La fonction array_splice()

la fonction array_splice() supprime l'élément sélectionné du tableau et le remplace avec le nouvel élément, remplacez-le. Cette fonction renverra également le tableau contenant les éléments supprimés. Si la fonction ne supprime aucun élément (longueur=0), le tableau remplacé sera inséré à partir de la position du paramètre start.

Syntaxe

array_splice(array,start,length,array)

Paramètres Description
tableau Obligatoire. Spécifie un tableau.
démarrer Obligatoire. valeur numérique. Spécifie la position de départ des éléments supprimés.
参数 描述
array 必需。规定数组。
start

必需。数值。规定删除元素的开始位置。

  • 0 = 第一个元素。
  • 如果该值设置为正数,则从数组中该值指定的偏移量开始移除。
  • 如果该值设置为负数,则从数组末端倒数该值指定的偏移量开始移除。
  • -2 意味着从数组的倒数第二个元素开始。
length

可选。数值。规定被移除的元素个数,也是被返回数组的长度。

  • 如果该值设置为正数,则移除该数量的元素。
  • 如果该值设置为负数,则移除从 start 到数组末端倒数 length 为止中间所有的元素。
  • 如果该值未设置,则移除从 start 参数设置的位置开始直到数组末端的所有元素。
array

可选。规定带有要插入原始数组中元素的数组。

如果只有一个元素,则可以设置为字符串,不需要设置为数组。

    0 = premier élément.

    Si la valeur est définie sur un nombre positif, la suppression commence au décalage spécifié par la valeur dans le tableau.

    Si la valeur est définie sur un nombre négatif, la suppression commence au décalage spécifié par la valeur à partir de la fin du tableau.

    -2 signifie commencer de l'avant-dernier élément du tableau.

longueur Facultatif. valeur numérique. Spécifie le nombre d'éléments à supprimer, qui correspond également à la longueur du tableau renvoyé.
    Si la valeur est définie sur un nombre positif, supprimez ce nombre d'éléments. Si la valeur est définie sur un nombre négatif, tous les éléments du début à la longueur réciproque de la fin du tableau sont supprimés. Si cette valeur n'est pas définie, supprime tous les éléments de la position définie par le paramètre start jusqu'à la fin du tableau.
tableau Facultatif. Spécifie le tableau avec les éléments à insérer dans le tableau d'origine. S'il n'y a qu'un seul élément, il peut être défini sur une chaîne et n'a pas besoin d'être défini sur un tableau.
Exemple : Définir le paramètre de longueur sur 0 :
<?php
$a1=array("0"=>"red","1"=>"green");
$a2=array("0"=>"purple","1"=>"orange");
array_splice($a1,1,0,$a2);
print_r($a1);
?>
Sortie :
Array ( [0] => red [1] => purple [2] => orange [3] => green )
Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn