Explication détaillée de PHP foreach traversant des tableaux

PHPz
Libérer: 2023-03-07 09:38:02
original
4251 Les gens l'ont consulté

Qu'est-ce que PHP foreach ?

foreach est un moyen pratique de parcourir un tableau. foreach ne peut être utilisé qu'avec des tableaux et une erreur se produira lorsque vous tenterez de l'utiliser avec d'autres types de données ou une variable non initialisée.

Deux syntaxes pour PHP foreach

Il existe deux syntaxes, la seconde est moins importante mais est une extension utile de la première.

  • Le premier format parcourt le tableau array_expression donné. À chaque passage dans la boucle, la valeur de la cellule actuelle est affectée à $value et le pointeur à l'intérieur du tableau est avancé d'un pas (la cellule suivante sera donc obtenue dans la boucle suivante).

    foreach (array_expression as $value)
      statement
    Copier après la connexion
  • Le deuxième format fait la même chose, sauf que le nom de clé de la cellule actuelle sera également attribué à la variable $key dans chaque boucle.
    Depuis PHP 5, il est également possible de parcourir des objets.

    foreach (array_expression as $key => $value)
      statement
    Copier après la connexion

Remarque : lorsque foreach commence à s'exécuter, le pointeur à l'intérieur du tableau pointe automatiquement vers la première unité. Cela signifie qu'il n'est pas nécessaire d'appeler reset() avant la boucle foreach.

Remarque : à moins que le tableau ne soit référencé, foreach opère sur une copie du tableau spécifié, pas sur le tableau lui-même. foreach a des effets secondaires sur les pointeurs de tableau. Ne vous fiez pas à la valeur d'un pointeur de tableau pendant ou après une boucle foreach à moins qu'il ne soit réinitialisé.
Depuis PHP 5, il est facile de modifier les éléments d'un tableau en faisant précéder $value de &. Cette méthode attribue par référence plutôt que de copier une valeur.

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as &$value) {
    $value = $value * 2;
}
// $arr is now array(2, 4, 6, 8)
?>
Copier après la connexion

Cette méthode n'est disponible que lorsque le tableau parcouru peut être référencé (par exemple, il s'agit d'une variable).

<?php
foreach (array(1, 2, 3, 4) as &$value) {
    $value = $value * 2;
}
?>
Copier après la connexion

 

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal