Maison > développement back-end > PHP8 > le corps du texte

Utilisez des expressions de correspondance en PHP8 pour rendre votre code beau et efficace

王林
Libérer: 2023-06-21 10:50:54
original
1126 Les gens l'ont consulté

Avec le développement et l'amélioration continus du langage de programmation PHP, de nombreuses nouvelles fonctionnalités intéressantes et sucres de syntaxe ont été introduits dans la version PHP8. Cet article présentera l'un des sucres syntaxiques qui rendent votre code plus beau et plus efficace : faire correspondre les expressions.

L'expression match est basée sur l'instruction switch, mais elle a une syntaxe plus compacte et peut renvoyer une variable, ce qui rend le code plus concis et plus facile à comprendre.

La syntaxe d'utilisation des expressions de correspondance :

match ($value) {
    pattern => statement,
    pattern2 => statement2,
...
    default => statementN
}
Copier après la connexion

Ici, le paramètre de l'expression de correspondance est une variable $value, qui représente la valeur qui doit être comparée. Nous pouvons ensuite utiliser un modèle pour faire correspondre la valeur de $value et exécuter l'instruction.

Voici un exemple qui montre comment les expressions de correspondance peuvent améliorer la lisibilité du code :

Code sans expressions de correspondance :

function getDayOfWeek($day) {
    $result = "";
    switch ($day) {
        case 0:
            $result = "Sunday";
            break;
        case 1:
            $result = "Monday";
            break;
        case 2:
            $result = "Tuesday";
            break;
        case 3:
            $result = "Wednesday";
            break;
        case 4:
            $result = "Thursday";
            break;
        case 5:
            $result = "Friday";
            break;
        case 6:
            $result = "Saturday";
            break;
    }
    return $result;
}
Copier après la connexion

Utiliser le code pour l'expression de correspondance :

function getDayOfWeek($day) {
    return match ($day) {
        0 => "Sunday",
        1 => "Monday",
        2 => "Tuesday",
        3 => "Wednesday",
        4 => "Thursday",
        5 => "Friday",
        6 => "Saturday",
    };
}
Copier après la connexion

Vous constaterez qu'après avoir réécrit cette fonction à l'aide de l'expression de correspondance, le code est plus lisible et rationalisé, et le code en double peut également être supprimé.

Dans le même temps, l'utilisation d'expressions de correspondance peut simplifier l'imbrication dans plusieurs instructions conditionnelles.

function getDiscountPercentage($age, $residency) {
    if ($age >= 65 && $residency === 'YES') {
        return 20;
    } elseif ($age >= 65 && $residency === 'NO') {
        return 10;
    } elseif ($age < 65 && $residency === 'YES') {
        return 10;
    } else {
        return 5;
    }
}
Copier après la connexion

L'utilisation d'expressions de correspondance peut rendre le code ci-dessus plus efficace et plus concis.

function getDiscountPercentage($age, $residency) {
    return match (true) {
        $age >= 65 && $residency === 'YES' => 20,
        $age >= 65 && $residency === 'NO' => 10,
        $age < 65 && $residency === 'YES' => 10,
        default => 5,
    };
}
Copier après la connexion

L'utilisation d'expressions de correspondance peut rendre le code plus efficace, concis et lisible.

Lors de la refactorisation de votre code, nous vous recommandons d'envisager d'utiliser des expressions de correspondance pour améliorer l'efficacité et la lisibilité du code.

Bien sûr, l'expression match n'est pas une solution universelle pour toutes les situations, mais pour certains scénarios, elle peut optimiser le code et améliorer l'efficacité et la lisibilité du code.

Enfin, un autre avantage de l'utilisation des expressions de correspondance est qu'elles maintiennent la cohérence de votre code, car vous êtes plus susceptible d'écrire du code similaire plutôt que d'écrire de nombreuses instructions if/elseif différentes.

En bref, utiliser des expressions de correspondance améliorera grandement la lisibilité, la maintenabilité et l'efficacité de votre code.

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!