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']); }
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']); }
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!