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中文網其他相關文章!