Mengenai operasi hebat kenyataan perlawanan baharu dalam PHP8

藏色散人
Lepaskan: 2023-02-17 12:28:01
ke hadapan
2857 orang telah melayarinya

Sintaks baharu PHP8: padankan [operasi fungsi tanpa nama yang lebih menarik]

PHP8 mempunyai sintaks baharu yang sangat berguna, iaitu pernyataan padanan. Pernyataan padanan adalah serupa dengan suis asal, tetapi lebih ketat dan mudah daripada suis

Kod penyataan suis asal adalah seperti berikut:

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
Salin selepas log masuk

Selepas digantikan dengan pernyataan padanan:

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
Salin selepas log masuk

Operasi saucy

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
Salin selepas log masuk

Ringkasan: Padanan sintaks baharu PHP8 lebih mudah dan ketat daripada sintaks suis asal

Kajian yang disyorkan: "Tutorial PHP8

Atas ialah kandungan terperinci Mengenai operasi hebat kenyataan perlawanan baharu dalam PHP8. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:janrs.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan