Maison  >  Article  >  développement back-end  >  Parlons en profondeur du fonctionnement des éléments de remplacement des tableaux PHP

Parlons en profondeur du fonctionnement des éléments de remplacement des tableaux PHP

PHPz
PHPzoriginal
2023-04-23 09:18:00489parcourir

PHP est un langage de script côté serveur largement utilisé. Il possède de puissantes capacités de traitement de données et une grande flexibilité et est largement utilisé dans le développement Web. Parmi eux, le tableau est un type de données très important, souvent utilisé pour stocker et exploiter des données. En PHP, nous pouvons utiliser des fonctions intégrées pour effectuer diverses opérations sur les tableaux, telles que l'ajout, la suppression, l'interrogation, le tri, le parcours, etc. Cet article se concentrera sur le fonctionnement des éléments de remplacement des tableaux PHP et fournira des exemples de code spécifiques.

1. Fonctions courantes pour remplacer des éléments de tableau

PHP fournit plusieurs fonctions pour remplacer des éléments dans des tableaux, parmi lesquelles les trois fonctions suivantes sont les plus couramment utilisées :

  1. array_replace($array1, $array2)

Cette fonction remplace les éléments du tableau 2 par les éléments correspondants du tableau 1. S'il y a les mêmes noms de clé dans le tableau 1 ou le tableau 2, la valeur de ce dernier tableau est utilisée pour remplacer la valeur du tableau précédent. Veuillez regarder l'exemple de code ci-dessous :

$array1 = array('a' => 'apple', 'b' => 'banana', 'c' => 'cherry');
$array2 = array('a' => 'apricot', 'd' => 'date');
$result = array_replace($array1, $array2);
print_r($result);

Exécutez le code ci-dessus et vous obtiendrez le résultat suivant :

Array
(
    [a] => apricot
    [b] => banana
    [c] => cherry
    [d] => date
)

Comme vous pouvez le voir, la paire clé-valeur ('a'=>'apple') dans le tableau 1 a été remplacée par la paire clé-valeur dans le tableau 2. La paire clé-valeur ('a'=>'abricot') est remplacée et la nouvelle paire clé-valeur ('d'=>'date') dans le tableau 2 est également ajouté au tableau de résultat final.

  1. array_replace_recursive($array1, $array2)

Cette fonction est très similaire à array_replace(), mais elle remplace récursivement les éléments du tableau 2 par les éléments correspondants du tableau 1. Si la valeur de array1 ou array2 est un tableau, les paires clé-valeur de cette valeur seront également remplacées de manière récursive. Veuillez regarder l'exemple de code ci-dessous :

$array1 = array('a' => array('b' => 'blue', 'c' => 'cyan'), 'd' => 'black');
$array2 = array('a' => array('b' => 'brown', 'e' => 'emerald'));
$result = array_replace_recursive($array1, $array2);
print_r($result);

Exécutez le code ci-dessus et vous obtiendrez le résultat suivant :

Array
(
    [a] => Array
        (
            [b] => brown
            [c] => cyan
            [e] => emerald
        )

    [d] => black
)

Comme vous pouvez le voir, la paire clé-valeur dans le tableau 1 ('a'=>array('b '=>'blue ', 'c'=>'cyan')) a été remplacé par la paire clé-valeur dans le tableau 2 ('a'=>array('b'=>'brown', 'e'=>'emerald' )) remplacé. De plus, les sous-tableaux du tableau sont également remplacés de manière récursive.

  1. array_splice($array, $offset, $length, $replacement)

Cette fonction est utilisée pour supprimer l'élément à la position spécifiée dans le tableau et insérer un nouvel élément à cette position. Plus précisément, le paramètre $offset représente la position d'index de départ de l'élément à supprimer/remplacer, le paramètre $length représente le nombre d'éléments à supprimer (0 si aucun élément n'est supprimé) et le paramètre $replacement représente le nouvel élément. à insérer. Veuillez regarder l'exemple de code ci-dessous :

$array = array('red', 'green', 'blue', 'yellow');
array_splice($array, 1, 2, array('purple', 'orange'));
print_r($array);

Exécutez le code ci-dessus et vous obtiendrez le résultat suivant :

Array
(
    [0] => red
    [1] => purple
    [2] => orange
    [3] => yellow
)

Vous pouvez voir que les 2 éléments ("vert", "bleu") à partir de l'index 1 dans le tableau d'origine ont été supprimés, et deux nouveaux éléments (« violet », « orange ») sont insérés à l'index 1.

2. Exemples d'applications

Voyons maintenant comment utiliser la fonction ci-dessus pour remplacer des éléments dans un tableau PHP en fonction de scénarios d'application spécifiques.

  1. Application des règles de substitution

Supposons que nous ayons un tableau dans lequel les noms de clés sont les noms chinois de certaines plantes et les valeurs clés sont leurs noms anglais. Nous souhaitons désormais remplacer les noms anglais de certaines plantes, comme "apple" par "orange" et "cherry" par "grape", en laissant le reste inchangé. Ceci peut être réalisé en utilisant la fonction array_replace(). Veuillez regarder l'exemple de code ci-dessous :

$plants = array('苹果' => 'apple', '香蕉' => 'banana', '樱桃' => 'cherry', '葡萄' => 'grape');
$rules = array('apple' => 'orange', 'cherry' => 'grape');
$newPlants = array_replace($plants, $rules);
print_r($newPlants);

Exécutez le code ci-dessus et vous obtiendrez le résultat suivant :

Array
(
    [苹果] => orange
    [香蕉] => banana
    [樱桃] => grape
    [葡萄] => grape
)

Comme vous pouvez le voir, les valeurs clés​​nommées "apple" et "cherry" ont été remplacées par "orange" et "raisin" respectivement » tandis que le reste des valeurs clés restent inchangées.

  1. Application des tableaux multidimensionnels

Supposons que nous ayons un tableau multidimensionnel, les noms clés sont les noms de certaines villes et la valeur clé est un tableau associatif, qui contient la population, l'industrie et d'autres informations de la ville. Maintenant, nous voulons ajouter et soustraire la population de certaines villes et enregistrer les résultats dans le tableau d'origine. Ceci peut être réalisé en utilisant la fonction array_replace_recursive(). Le code est le suivant :

$cities = array(
    '北京市' => array('人口' => 2154, '产业' => '政治、文化、金融、科技'),
    '上海市' => array('人口' => 2424, '产业' => '金融、贸易、科技、文化'),
    '广州市' => array('人口' => 1500, '产业' => '商贸、制造、物流、金融')
);
$rules = array(
    '北京市' => array('人口' => -100),
    '广州市' => array('人口' => 200)
);
$newCities = array_replace_recursive($cities, $rules);
print_r($newCities);

Exécutez le code ci-dessus et vous obtiendrez le résultat suivant :

Array
(
    [北京市] => Array
        (
            [人口] => 2054
            [产业] => 政治、文化、金融、科技
        )

    [上海市] => Array
        (
            [人口] => 2424
            [产业] => 金融、贸易、科技、文化
        )

    [广州市] => Array
        (
            [人口] => 1700
            [产业] => 商贸、制造、物流、金融
        )
)

Comme vous pouvez le voir, la population de Pékin a diminué de 1 million, la population de Guangzhou a augmenté de 2 millions et les informations sur Shanghai restent inchangées.

  1. Application pour supprimer des éléments spécifiés

Supposons que nous ayons un tableau qui stocke les noms et l'âge de plusieurs individus. Désormais, nous souhaitons supprimer les informations des personnes âgées de 30 ans ou plus. Ceci peut être réalisé en utilisant la fonction array_splice(). Le code est le suivant :

$people = array(
    array('name' => '张三', 'age' => 25),
    array('name' => '李四', 'age' => 35),
    array('name' => '王五', 'age' => 28),
    array('name' => '赵六', 'age' => 42)
);
for ($i = count($people) - 1; $i >= 0; $i--) {
    if ($people[$i]['age'] >= 30) {
        array_splice($people, $i, 1);
    }
}
print_r($people);

Exécutez le code ci-dessus et vous obtiendrez le résultat suivant :

Array
(
    [0] => Array
        (
            [name] => 张三
            [age] => 25
        )

    [1] => Array
        (
            [name] => 王五
            [age] => 28
        )

)

Vous pouvez voir que les informations de deux personnes âgées de 30 ans ou plus ont été supprimé avec succès, tandis que ceux âgés de moins de 30 ans. Les informations pour les deux personnes âgées de deux ans restent les mêmes.

3. Résumé

En PHP, le tableau est une structure de données très couramment utilisée. Nous pouvons utiliser diverses fonctions pour l'ajouter, la supprimer, la modifier et la vérifier. Dans cet article, nous présentons le fonctionnement des éléments de remplacement des tableaux PHP, en nous concentrant sur l'utilisation des trois fonctions array_replace(), array_replace_recursive() et array_splice(), et fournissons des exemples de code basés sur des scénarios d'application spécifiques. J'espère que cet article pourra aider les lecteurs à mieux comprendre et utiliser les connaissances pertinentes sur les tableaux 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