Maison > développement back-end > tutoriel php > Contrôle de flux PHP pour l'instruction

Contrôle de flux PHP pour l'instruction

不言
Libérer: 2023-03-25 10:56:02
original
1529 Les gens l'ont consulté

Cet article présente principalement l'instruction for sur le contrôle des processus PHP, qui a une certaine valeur de référence. Maintenant, je la partage avec tout le monde. Les amis dans le besoin peuvent s'y référer

Cet article est destiné à une utilisation de base. Apprentissage, experts merci de fermer cette page

Il faut 7 minutes pour lire cet article Est-ce difficile de comprendre ceux qui ont des difficultés ?

(PHP 4, PHP 5, PHP 7)

la boucle for est la structure de boucle la plus complexe en PHP. Son comportement est similaire à celui du langage C. La syntaxe d'une boucle for est la suivante :

for (expr1; expr2; expr3)
    statement
Copier après la connexion

La première expression () est évaluée (et exécutée) de manière inconditionnelle une fois avant le début de la boucle.

est évalué avant chaque boucle. Si la valeur est TRUE, continuez la boucle et exécutez les instructions de boucle imbriquées. Si la valeur est FALSE, terminez la boucle.

est évalué (et exécuté) après chaque boucle.

Chaque expression peut être vide ou inclure plusieurs expressions séparées par des virgules. Dans expression , toutes les expressions séparées par des virgules sont évaluées, mais seul le dernier résultat est pris en compte. Vide signifie que la boucle continuera indéfiniment (comme C, PHP considère implicitement que sa valeur est TRUE). Cela n'est peut-être pas aussi inutile que vous le pensez, car vous souhaitez souvent utiliser une instruction conditionnelle break pour terminer la boucle au lieu d'utiliser la vérification de la vérité de l'expression for.

Considérez les exemples suivants, qui affichent tous deux les chiffres de 1 à 10 :

<?php
/* example 1 */

for ($i = 1; $i <= 10; $i++) {
    echo $i;
}

/* example 2 */

for ($i = 1; ; $i++) {
    if ($i > 10) {
        break;
    }
    echo $i;
}

/* example 3 */

$i = 1;
for (;;) {
    if ($i > 10) {
        break;
    }
    echo $i;
    $i++;
}

/* example 4 */

for ($i = 1, $j = 0; $i <= 10; $j += $i, print $i, $i++);
?>
Copier après la connexion

Bien sûr, le premier exemple semble le plus soigné (ou certains diraient le quatrième), mais le user Vous constaterez peut-être que l'utilisation d'expressions vides dans les boucles for est pratique dans de nombreuses situations.

PHP prend également en charge une syntaxe alternative pour les boucles for utilisant des deux-points.

for (expr1; expr2; expr3):
    statement;
    ...
endfor;
Copier après la connexion

Parfois, il est souvent nécessaire de parcourir un tableau comme dans l'exemple suivant :

<?php
/*
 * 此数组将在遍历的过程中改变其中某些单元的值
 */
$people = Array(
        Array(&#39;name&#39; => &#39;Kalle&#39;, &#39;salt&#39; => 856412), 
        Array(&#39;name&#39; => &#39;Pierre&#39;, &#39;salt&#39; => 215863)
        );

for($i = 0; $i < count($people); ++$i)
{
    $people[$i][&#39;salt&#39;] = rand(000000, 999999);
}
?>
Copier après la connexion

Le code ci-dessus peut s'exécuter très lentement Parce que la longueur du tableau doit être calculée à chaque fois qu'il boucle. Étant donné que la longueur du tableau reste toujours la même, une variable intermédiaire peut être utilisée pour stocker la longueur du tableau à des fins d'optimisation au lieu d'appeler constamment count() :

<?php
$people = Array(
        Array(&#39;name&#39; => &#39;Kalle&#39;, &#39;salt&#39; => 856412), 
        Array(&#39;name&#39; => &#39;Pierre&#39;, &#39;salt&#39; => 215863)
        );

for($i = 0, $size = count($people); $i < $size; ++$i)
{
    $people[$i][&#39;salt&#39;] = rand(000000, 999999);
}
?>
Copier après la connexion

Recommandations associées :

contrôle des processus php en cours de réalisation

Contrôle des processus PHP elseif/else if

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