2010-09-05 48 views
15

php中的關鍵字default做什麼?沒有關於http://php.net/default的文檔,但是在將其用作函數名稱時出現錯誤:»意外的T_DEFAULT,期望T_STRING«在php中的默認關鍵字

它是幹什麼的/我在哪裏可以找到關於它的信息?

+13

媽呀,這是在'switch'默認情況下...現在我感到很蠢: -/ – knittl 2010-09-05 12:41:23

+0

大小寫不敏感再次觸發,我想在一個類中使用DEFAULT常量:D – 2014-03-28 13:33:07

+1

請注意,從PHP7開始,可能有名稱爲「default」(以及o ),因爲詞法分析器比以前更聰明,所以可以用於一些方法。請參閱https://wiki.php.net/rfc/context_sensitive_lexer。 – 2017-02-16 18:38:01

回答

15

defaultswitch語句的一部分:

switch ($cond) { 
    case 1: 
    echo '$cond==1'; 
    break; 
    case 2: 
    echo '$cond==2'; 
    break; 
    default: 
    echo '$cond=="whatever"'; 
} 
8

default關鍵字在switch construct使用:

$value = 'A'; 
switch ($value) { 
case 'A': 
case 'B': 
    echo '$value is either A or B.'; 
break; 
case 'C': 
    echo '$value is C.'; 
break; 
default: 
    echo '$value is neither A, nor B, nor C.'; 
} 

默認情況匹配任何不是由其他情況相匹配。

4

添加到別人的答案:

default是一個PHP關鍵字和關鍵字不能用作函數名稱。

當您嘗試:

function default() { 
.... 
} 

PHP預計關鍵字function後看到一個T_STRING(標識),但看到一個T_DEFAULT和標誌解析/語法錯誤:

unexpected T_DEFAULT, expecting T_STRING

+0

是的,正是我得到的錯誤 – knittl 2010-09-05 12:42:07