PHP程序員在開發(fā)過程中一定會非常熟悉的方法就是default函數(shù)。這個函數(shù)有多種用法,通過本文的介紹,你將更加了解其詳細(xì)用法和參數(shù)含義。
首先,讓我們來考慮一下日常開發(fā)中default函數(shù)的應(yīng)用場景,比如:
$foo = isset($_POST['foo']) ? $_POST['foo'] : 'default'; // -- 或 -- $foo = ($_POST['foo']) ?? 'default';
這兩種方式都是為了處理類似“如果$foo存在,則賦值$foo,否則賦值 'default'的問題,這就是default函數(shù)最常見的用法。
default函數(shù)也可以用于檢查函數(shù)參數(shù),比如我們來看下面的代碼:
function user_login($username = null, $password = null, $remember = false){ $username = $username ?? 'guest'; $password = $password ?? 'guest'; // 其它操作 ... }
上面的代碼中,我們設(shè)置了默認(rèn)值,如果$username 和$password沒有傳遞,那么函數(shù)內(nèi)部就會設(shè)置為 'guest',而且通過這種方式,可以使代碼更加的簡潔和易讀。
還有一種非常刁鉆的用法,如下:
$foo = null; echo $foo ?? 'default value'; // 如果$foo存在,則輸出它,否則輸出默認(rèn)值。
通過這種方式,我們可以更加的簡潔有力。
除了上面介紹的常見用法,default函數(shù)還有一些其他的高級用法:
1. 在函數(shù)參數(shù)中使用default的語法
function foo($arg1, $arg2 = 'default', ...){ // 其它操作... }
2. 三元表達(dá)式的短語法 ??
$foo = null; echo $foo ?? 'default value';
3. 集合使用default
$arr = ['key1'=>'val1', 'key2'=>'val2']; $val = $arr['key3'] ?? 'default value';
總之,PHP中default函數(shù)的應(yīng)用非常廣泛,掌握default函數(shù)的使用方法可以提高代碼的可讀性和可維護(hù)性,從而使代碼更加健壯。