Nouvelle expression de correspondance PHP8.1 : simplification de plusieurs jugements de conditions

WBOY
Libérer: 2023-07-08 13:06:01
original
1106 Les gens l'ont consulté

PHP est un langage de script côté serveur très populaire qui se développe et s'améliore constamment. Dans la dernière version de PHP8.1, une nouvelle fonctionnalité importante a été ajoutée : faire correspondre les expressions. Cette nouvelle fonctionnalité rend les jugements conditionnels multiples plus simples et plus faciles à lire. Cet article présentera l'utilisation des expressions de correspondance et la démontrera à travers quelques exemples de code.

En PHP, nous devons souvent effectuer plusieurs jugements conditionnels sur différentes variables ou expressions. La méthode traditionnelle consiste à utiliser une série d’instructions if-else. L’expression match nous offre une manière d’écrire plus concise. Regardons un exemple simple :

$value = 5;

$result = match($value) {
    1 => 'One',
    2 => 'Two',
    3, 4 => 'Three or Four',
    default => 'Other'
};

echo $result; // 输出:Other
Copier après la connexion

Dans le code ci-dessus, nous utilisons l'expression de correspondance pour déterminer la valeur de la variable $value. Les parenthèses après match sont les variables ou expressions qui doivent être jugées. Après la flèche, nous pouvons lister les valeurs qui doivent correspondre et suivre les résultats correspondants après la flèche. Si aucune valeur ne correspond, nous pouvons utiliser le mot-clé default pour spécifier un résultat par défaut. Dans cet exemple, la valeur de $value est 5, ce qui ne correspond à aucune des valeurs spécifiées, le résultat final est donc « Autre ». $value的值。match后面的括号中是需要判断的变量或表达式。在箭头后面,我们可以列举需要匹配的值,并在箭头后面跟上相应的结果。如果没有匹配到任何值,我们可以使用default关键字来指定默认的结果。在这个例子中,$value的值为5,没有匹配到任何一个指定的值,因此最终结果为'Other'。

除了单个值的匹配外,我们还可以使用列表来进行匹配。下面是一个示例代码:

$value = 20;

$result = match($value) {
    in_array($value, [1, 2, 3]) => 'One, Two or Three',
    in_array($value, [4, 5, 6]) => 'Four, Five or Six',
    default => 'Other'
};

echo $result; // 输出:Other
Copier après la connexion

在上面的代码中,我们使用了in_array函数来判断$value是否在指定的列表中。如果匹配成功,则返回相应的结果。如果没有匹配成功,则返回默认的结果。

此外,match表达式还支持使用其他表达式或函数进行匹配。我们可以根据具体的需求进行组合和使用。下面是一个更复杂的示例:

$value = 100;

$result = match(true) {
    in_array($value, range(1, 10)) => 'One to Ten',
    $value > 10 && $value < 100 => 'Between Ten and One Hundred',
    is_numeric($value) => 'Numeric Value',
    default => 'Others'
};

echo $result; // 输出:Others
Copier après la connexion

在上面的代码中,我们判断了$value

En plus de faire correspondre des valeurs uniques, nous pouvons également utiliser des listes pour faire correspondre. Voici un exemple de code :

rrreee

Dans le code ci-dessus, nous utilisons la fonction in_array pour déterminer si $value est dans la liste spécifiée. Si la correspondance réussit, le résultat correspondant est renvoyé. Si aucune correspondance n'est trouvée, le résultat par défaut est renvoyé.

De plus, l'expression match prend également en charge l'utilisation d'autres expressions ou fonctions pour la correspondance. Nous pouvons les combiner et les utiliser selon des besoins spécifiques. Voici un exemple plus complexe : 🎜rrreee🎜Dans le code ci-dessus, nous déterminons si la valeur de $value est comprise entre 1 et 10, si elle est comprise entre 10 et 100, et s'il s'agit d'un nombre. Faites correspondre les résultats selon différentes conditions et renvoyez les résultats correspondants. 🎜🎜Grâce aux exemples ci-dessus, nous pouvons voir que le code de l'expression de correspondance est plus concis et plus facile à lire que l'instruction if-else traditionnelle. Il peut gérer plusieurs conditions simultanément et prend en charge la correspondance à l'aide de diverses expressions et fonctions. Pour plusieurs jugements conditionnels, les expressions de correspondance peuvent fournir une méthode de programmation plus élégante et plus efficace. 🎜🎜En résumé, la nouvelle expression de correspondance dans PHP8.1 rend les jugements conditionnels multiples plus simplifiés et plus faciles à lire. En utilisant des expressions de correspondance, nous pouvons transformer des jugements logiques complexes en code concis, améliorant ainsi la lisibilité et la maintenabilité du code. Pour les développeurs PHP, maîtriser l’utilisation des expressions de correspondance améliorera l’efficacité du développement et rendra le code plus concis et élégant. 🎜

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!