• 分类目录: 103 个;
  • 标签: 11093 个;
  • 资讯: 3966 篇;(待审:0 篇);
  • 网站: 1824 个 (待审:0个);
  • 小程序: 1个 (待审:0个);
  • 会员: 1个 (待审:1个);
首页 > 资讯中心 > IT编程

PHP8 中的 match新语句骚操作,看后立即用起来

时间:2023-08-02 08:36:10 栏目: IT编程 阅读:225次 来源: 长安目录网
【导读】:长安目录网(https://www.029dir.com/)在线提供,行业资讯「PHP8 中的 match新语句骚操作,看后立即用起来」,供行业资讯爱好者免费阅读。本文地址:https://www.029dir.com/it/24.html

  PHP 8引入了新的match表达式,它是switch语句的一种替代方式,用于更简洁和直观地处理多个条件分支。match表达式允许使用严格的值比较和返回值,以下是10个使用match表达式的示例:

  基本用法:

$color = 'red';

$result = match ($color) {
    'red' => 'Apple',
    'yellow' => 'Banana',
    'green' => 'Kiwi',
    default => 'Unknown fruit',
};

echo $result; // Output: "Apple"

使用条件运算符:

$number = 7;

$result = match (true) {
    $number > 0 => 'Positive',
    $number < 0 => 'Negative',
    default => 'Zero',
};

echo $result; // Output: "Positive"

使用条件运算符:

$number = 7;

$result = match (true) {
    $number > 0 => 'Positive',
    $number < 0 => 'Negative',
    default => 'Zero',
};

echo $result; // Output: "Positive"

使用多个条件:

$letter = 'a';

$result = match ($letter) {
    'a', 'e', 'i', 'o', 'u' => 'Vowel',
    default => 'Consonant',
};

echo $result; // Output: "Vowel"

使用范围条件:

$score = 85;

$result = match (true) {
    $score >= 90 => 'A',
    $score >= 80 => 'B',
    $score >= 70 => 'C',
    $score >= 60 => 'D',
    default => 'F',
};

echo $result; // Output: "B"

多个匹配条件执行相同逻辑:

$fruit = 'apple';

match ($fruit) {
    'apple', 'banana', 'orange' => {
        echo "This is a fruit.";
    },
    'carrot', 'broccoli' => {
        echo "This is a vegetable.";
    },
};
// Output: "This is a fruit."


空合并运算符:

$userName = null;

$result = match ($userName ?? '') {
    'admin' => 'Administrator',
    'guest' => 'Guest',
    default => 'Unknown user',
};

echo $result; // Output: "Unknown user"


嵌套使用:

$value = 10;

$result = match (true) {
    $value > 0 => match (true) {
        $value < 5 => 'Less than 5',
        $value > 5 => 'Greater than 5',
        default => 'Equal to 5',
    },
    default => 'Non-positive',
};

echo $result; // Output: "Greater than 5"

使用条件组合:

$day = 'Saturday';
$weather = 'sunny';

$result = match (true) {
    ($day === 'Saturday' || $day === 'Sunday') && $weather === 'sunny' => 'Outdoor activities',
    ($day === 'Saturday' || $day === 'Sunday') && $weather === 'rainy' => 'Indoor activities',
    default => 'Workday',
};

echo $result; // Output: "Outdoor activities"

使用默认值:

$value = 'x';

$result = match ($value) {
    1, 2, 3 => 'Small',
    4, 5, 6 => 'Medium',
    7, 8, 9 => 'Large',
    default => 'Unknown',
};

echo $result; // Output: "Unknown"

使用点运算符:

$grade = 85;

$result = match (true) {
    $grade < 60 => 'Failing',
    $grade >= 60 && $grade < 70 => 'D',
    $grade >= 70 && $grade < 80 => 'C',
    $grade >= 80 && $grade < 90 => 'B',
    $grade >= 90 => 'A',
};

echo $result; // Output: "B"

这些例子展示了 match 表达式在 PHP 8 中的多种用法,使得代码更简洁、易读和高效。在实际开发中,根据具体场景,您可以灵活使用 match 表达式来简化条件分支的处理。

标签:

版权声明:

1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

2、本站仅提供信息发布平台,不承担相关法律责任。

3、若侵犯您的版权或隐私,请联系本站管理员删除。

上一篇:学习软件编程太复杂?这些干货一定要收好 下一篇:已经是最后一篇
Powered By 「长安目录网」 © 2014-2099 陕ICP备2021012711号
站长QQ:897550518
站长微信