Maison développement back-end Problème PHP Comment changer la valeur originale du tableau en php

Comment changer la valeur originale du tableau en php

Apr 19, 2023 am 10:04 AM

Le tableau PHP est une structure de données très courante, très pratique et flexible à utiliser. En PHP, il est souvent nécessaire de modifier le tableau d'origine, et dans certains cas, la valeur du tableau d'origine doit être modifiée. Cet article explique comment modifier la valeur d'origine du tableau en PHP.

1. Assignation de référence de tableau

En PHP, si vous utilisez une instruction d'affectation pour attribuer une valeur à une variable de tableau, alors la nouvelle variable est une copie du tableau d'origine, c'est-à-dire modifier la valeur du nouveau tableau. La variable ne changera pas la valeur du tableau d'origine. Si vous devez modifier la valeur du tableau d'origine, vous devez utiliser l'affectation de référence. Le symbole d'affectation de référence "&" peut être placé devant une variable, ce qui signifie que lors de l'affectation d'une variable à une autre variable, une référence à la variable d'origine est utilisée. Ainsi, modifier la valeur d’une variable modifie simultanément la valeur de l’autre variable.

Par exemple, le code suivant montre la différence entre l'affectation de référence et l'affectation traditionnelle :

// 传统的赋值语句
$array1 = array(1, 2, 3);
$array2 = $array1;
$array2[1] = 4;
print_r($array1); // 输出 Array ( [0] => 1 [1] => 2 [2] => 3 )
print_r($array2); // 输出 Array ( [0] => 1 [1] => 4 [2] => 3 )

// 引用赋值语句
$array1 = array(1, 2, 3);
$array2 = &$array1;
$array2[1] = 4;
print_r($array1); // 输出 Array ( [0] => 1 [1] => 4 [2] => 3 )
print_r($array2); // 输出 Array ( [0] => 1 [1] => 4 [2] => 3 )
Copier après la connexion

Vous pouvez voir que dans le code utilisant l'affectation de référence, modifier la valeur de $array2 modifiera également la valeur de $array1. En effet, $array2 est une référence à $array1 et ils pointent vers le même tableau.

2. Modifier directement la valeur de l'élément du tableau

En plus d'utiliser l'affectation de référence, vous pouvez également modifier directement la valeur de l'élément du tableau pour changer la valeur du tableau d'origine. Vous pouvez utiliser des indices de tableau pour accéder et modifier les valeurs des éléments du tableau. Par exemple, le code suivant montre comment modifier directement la valeur d'un élément de tableau via un indice de tableau :

// 直接修改数组元素的值
$array = array(1, 2, 3);
$array[1] = 4;
print_r($array); // 输出 Array ( [0] => 1 [1] => 4 [2] => 3 )
Copier après la connexion

Vous pouvez voir qu'après avoir modifié la valeur de $array[1] en 4, la valeur de $array est également modifiée . En effet, en PHP, un tableau est une collection ordonnée et chaque élément possède un indice unique pour l'identifier. Par conséquent, accéder et modifier les valeurs des éléments du tableau via les indices du tableau est une opération très courante.

3. Utilisez les fonctions de tableau pour modifier la valeur du tableau d'origine

En PHP, vous pouvez également utiliser une variété de fonctions de tableau pour modifier la valeur du tableau d'origine. Ces fonctions incluent l'ajout et la suppression d'éléments, le tri et le filtrage de tableaux, etc. Voici quelques fonctions de tableau couramment utilisées :

  1. array_push : Ajoutez un ou plusieurs éléments à la fin du tableau.
$array = array(1, 2, 3);
array_push($array, 4, 5);
print_r($array); // 输出 Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Copier après la connexion
  1. array_pop : Supprime un élément de la fin du tableau.
$array = array(1, 2, 3);
array_pop($array);
print_r($array); // 输出 Array ( [0] => 1 [1] => 2 )
Copier après la connexion
  1. array_shift : Supprime un élément du début du tableau.
$array = array(1, 2, 3);
array_shift($array);
print_r($array); // 输出 Array ( [0] => 2 [1] => 3 )
Copier après la connexion
  1. array_unshift : Ajoutez un ou plusieurs éléments au début du tableau.
$array = array(1, 2, 3);
array_unshift($array, 0);
print_r($array); // 输出 Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 )
Copier après la connexion
  1. array_splice : supprime un nombre spécifié d'éléments d'un tableau et les remplace par de nouveaux éléments.
$array = array(1, 2, 3, 4, 5);
array_splice($array, 1, 2, array(6, 7));
print_r($array); // 输出 Array ( [0] => 1 [1] => 6 [2] => 7 [3] => 4 [4] => 5 )
Copier après la connexion
  1. tri : Trie le tableau par ordre croissant.
$array = array(3, 1, 4, 1, 5, 9);
sort($array);
print_r($array); // 输出 Array ( [0] => 1 [1] => 1 [2] => 3 [3] => 4 [4] => 5 [5] => 9 )
Copier après la connexion

7.rsort : Trie le tableau par ordre décroissant.

$array = array(3, 1, 4, 1, 5, 9);
rsort($array);
print_r($array); // 输出 Array ( [0] => 9 [1] => 5 [2] => 4 [3] => 3 [4] => 1 [5] => 1 )
Copier après la connexion
  1. array_filter : Filtre les éléments du tableau qui ne remplissent pas les conditions.
$array = array(1, 2, 3, 4, 5);
$array = array_filter($array, function($value) {
    return $value % 2 == 0;
});
print_r($array); // 输出 Array ( [1] => 2 [3] => 4 )
Copier après la connexion

Comme vous pouvez le voir dans l'exemple ci-dessus, l'utilisation de ces fonctions de tableau peut facilement modifier la valeur du tableau d'origine et améliorer la lisibilité et la maintenabilité du code.

Conclusion

Il existe de nombreuses façons de modifier la valeur du tableau d'origine en PHP. Vous pouvez utiliser l'affectation de référence, modifier directement la valeur de l'élément du tableau et utiliser des fonctions de tableau. Le choix de ces méthodes dépend des besoins réels et de la commodité. J'espère que cet article pourra aider les développeurs PHP et les rendre plus compétents dans l'utilisation des tableaux et le traitement des données.

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 de ce site Web
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

Article chaud

Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Article chaud

Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quelles sont les meilleures pratiques pour la déduplication des tableaux PHP Quelles sont les meilleures pratiques pour la déduplication des tableaux PHP Mar 03, 2025 pm 04:41 PM

Quelles sont les meilleures pratiques pour la déduplication des tableaux PHP

Quelles sont les dernières normes de codage PHP et les meilleures pratiques? Quelles sont les dernières normes de codage PHP et les meilleures pratiques? Mar 10, 2025 pm 06:16 PM

Quelles sont les dernières normes de codage PHP et les meilleures pratiques?

La déduplication PHP Array peut-elle profiter de l'unicité du nom clé? La déduplication PHP Array peut-elle profiter de l'unicité du nom clé? Mar 03, 2025 pm 04:51 PM

La déduplication PHP Array peut-elle profiter de l'unicité du nom clé?

Comment puis-je travailler avec les extensions de PHP et PECL? Comment puis-je travailler avec les extensions de PHP et PECL? Mar 10, 2025 pm 06:12 PM

Comment puis-je travailler avec les extensions de PHP et PECL?

Comment implémenter les files d'attente de messages (Rabbitmq, Redis) dans PHP? Comment implémenter les files d'attente de messages (Rabbitmq, Redis) dans PHP? Mar 10, 2025 pm 06:15 PM

Comment implémenter les files d'attente de messages (Rabbitmq, Redis) dans PHP?

La déduplication du tableau PHP doit-elle être prise en compte pour les pertes de performance? La déduplication du tableau PHP doit-elle être prise en compte pour les pertes de performance? Mar 03, 2025 pm 04:47 PM

La déduplication du tableau PHP doit-elle être prise en compte pour les pertes de performance?

Quelles sont les techniques d'optimisation pour la déduplication des tableaux PHP Quelles sont les techniques d'optimisation pour la déduplication des tableaux PHP Mar 03, 2025 pm 04:50 PM

Quelles sont les techniques d'optimisation pour la déduplication des tableaux PHP

Comment utiliser la réflexion pour analyser et manipuler le code PHP? Comment utiliser la réflexion pour analyser et manipuler le code PHP? Mar 10, 2025 pm 06:12 PM

Comment utiliser la réflexion pour analyser et manipuler le code PHP?

See all articles