Maison > développement back-end > tutoriel php > Comment puis-je modifier les valeurs d'un tableau directement dans une boucle PHP Foreach ?

Comment puis-je modifier les valeurs d'un tableau directement dans une boucle PHP Foreach ?

Barbara Streisand
Libérer: 2024-12-23 06:43:14
original
167 Les gens l'ont consulté

How Can I Modify Array Values Directly Within a PHP Foreach Loop?

Modification des valeurs d'un tableau dans une boucle Foreach

En PHP, lors d'une itération sur un tableau à l'aide d'une boucle foreach, il est possible de modifier la valeur actuelle élément en cours de traitement. Cela nous permet de manipuler les valeurs du tableau pendant l'itération elle-même.

Pour modifier l'objet actuel dans une boucle foreach, il existe deux approches courantes :

1. Utilisation de la clé de préservation

foreach ($questions as $key => $question) {
    $questions[$key]['answers'] = $answers_model->get_answers_by_question_id($question['question_id']);
}
Copier après la connexion

Dans cette approche, nous préservons les clés du tableau en utilisant $key => $question. Cela nous permet de mettre à jour l'élément associé dans la variable principale $questions.

2. Utilisation de l'attribution de référence

foreach ($questions as &$question) {
    $question['answers'] = $answers_model->get_answers_by_question_id($question['question_id']);
}
Copier après la connexion

Ici, la question $ précédente indique l'attribution de référence. Cela signifie que la variable $question à l'intérieur de la boucle modifie directement l'élément du tableau.

Selon la documentation PHP, "Afin de pouvoir modifier directement les éléments du tableau dans la boucle, faites précéder $value de &. Dans ce cas cas, la valeur sera attribuée par référence."

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal