首頁 > 後端開發 > PHP8 > 關於PHP8中match新語句的騷操作

關於PHP8中match新語句的騷操作

藏色散人
發布: 2023-02-17 12:28:01
轉載
2892 人瀏覽過

PHP8新語法:match [更騷的匿名函數運算]

PHP8 新出的一個語法很好用,就是 match 語句。 match 語句跟原來的switch 類似,不過比switch 更加的嚴格和方便

原來的switch 語句代碼如下:

function getStr( $strType ){
    switch( $strType ){
        case 1:
            $str = 'one';
            break;
        case 2:
            $str = 'two';
            break;
        default :
            $str = 'error';
    }
    return $str;
}
//当输入数值 1 和 字符 '1' 不会进行类型判断
echo getStr(1); //one
echo getStr('1'); //one
echo getStr(2); //two
echo getStr('2'); //two
登入後複製

換成match 語句後:

function getStr( $strType ){
    return match( $strType ){
        1 => 'number one',
        '1' => 'string one',
        default => 'error',
    };
}
//可以看出输入数值 1 跟字符 `1` 返回的值是不同的
echo getStr(1); //number one
echo getStr('1'); //string one
登入後複製

騷操作

function getStr( $strType ){
    return match( $strType ){
        1 => (function(){
            return 'number one';
        })(),
        '1' => (function(){
            return 'string one';
        })(),
        default => 'error',
    };
}
//虽然这种代码风格也能行的通,但是总感觉哪里怪怪的
echo getStr(1); //number one
echo getStr('1'); //string one
登入後複製

總結:PHP8 新出的語法match 相比原來的switch 語法更加的方便和嚴格

推薦學習:《PHP8教程

以上是關於PHP8中match新語句的騷操作的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:janrs.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板