附錄 Q. 解析器代號清單

PHP 語系的不同部分在內定被表示為類似 T_SR 的類型。PHP 在解析錯誤時輸出這樣的標識符,例如 "Parse error: unexpected T_SR, expecting ',' or ';' in script.php on line 10."

應該知道 T_SR 的含義。對於所有不知道的人,下表列出了這些標識符,PHP 語法和在手冊中適當位置的參考。

表格 Q-1. 代號

代號語法參考
T_ABSTRACTabstractthe 節 called Class Abstraction 在 u? 19 章(自 PHP 5.0.0 起可用)
T_AND_EQUAL&=賦值運算符
T_ARRAYarray()array()陣列語法
T_ARRAY_CAST(array)類型轉換
T_ASasforeach
T_BAD_CHARACTER 在 ASCII 32 之前除了 \t (0x09), \n (0x0a) 和 \r (0x0d) 以外的任何字元
T_BOOLEAN_AND&&邏輯運算符
T_BOOLEAN_OR||邏輯運算符
T_BOOL_CAST(bool) 或 (boolean)類型轉換
T_BREAKbreakbreak
T_CASEcaseswitch
T_CATCHcatchu? 20 章(自 PHP 5.0.0 起可用)
T_CHARACTER  
T_CLASSclass類和物件
T_CLONEclone類和物件。僅用於 PHP 5。
T_CLOSE_TAG?> 或 %> 
T_COMMENT// 或 #,以及 PHP 5 下的 /* */注解
T_CONCAT_EQUAL.=賦值運算符
T_CONSTconst 
T_CONSTANT_ENCAPSED_STRING"foo" 或 'bar'字串語法
T_CONTINUEcontinue 
T_CURLY_OPEN  
T_DEC--遞增/遞減運算符
T_DECLAREdeclaredeclare
T_DEFAULTdefaultswitch
T_DIV_EQUAL/=賦值運算符
T_DNUMBER0.12,等等浮點數
T_DOC_COMMENT/** */PHPDoc 風格的注解(僅用於 PHP 5)
T_DOdodo..while
T_DOLLAR_OPEN_CURLY_BRACES${複雜變量解析語法
T_DOUBLE_ARROW=>陣列語法
T_DOUBLE_CAST(real), (double) 或 (float)類型轉換
T_DOUBLE_COLON::見下面的 T_PAAMAYIM_NEKUDOTAYIM
T_ECHOechoecho()
T_ELSEelseelse
T_ELSEIFelseifelseif
T_EMPTYemptyempty()
T_ENCAPSED_AND_WHITESPACE  
T_ENDDECLAREenddeclaredeclare替代語法
T_ENDFORendforfor替代語法
T_ENDFOREACHendforeachforeach替代語法
T_ENDIFendifif替代語法
T_ENDSWITCHendswitchswitch替代語法
T_ENDWHILEendwhilewhile替代語法
T_END_HEREDOC heredoc 語法
T_EVALeval()eval()
T_EXITexit 或 dieexit(), die()
T_EXTENDSextendsextends類和物件
T_FILE__FILE__常量
T_FINALfinalthe 節 called Final Keyword 在 u? 19 章(自 PHP 5.0.0 起可用)
T_FORforfor
T_FOREACHforeachforeach
T_FUNCTIONfunction 或 cfunction函數
T_GLOBALglobal變量範圍
T_HALT_COMPILER__halt_compiler()__halt_compiler(自 PHP 5.1.0 起可用)
T_IFifif
T_IMPLEMENTSimplementsthe 節 called Object Interfaces 在 u? 19 章(自 PHP 5.0.0 起可用)
T_INC++遞增/遞減運算符
T_INCLUDEinclude()include()
T_INCLUDE_ONCEinclude_once()include_once()
T_INLINE_HTML  
T_INSTANCEOFinstanceoftype operators(僅 PHP5)
T_INT_CAST(int) 或 (integer)類型轉換
T_INTERFACEinterfacethe 節 called Object Interfaces 在 u? 19 章(自 PHP 5.0.0 起可用)
T_ISSETisset()isset()
T_IS_EQUAL==比較運算符
T_IS_GREATER_OR_EQUAL>=比較運算符
T_IS_IDENTICAL===比較運算符
T_IS_NOT_EQUAL!= or <>比較運算符
T_IS_NOT_IDENTICAL!==比較運算符
T_IS_SMALLER_OR_EQUAL<=比較運算符
T_LINE__LINE__常量
T_LISTlist()list()
T_LNUMBER123,012,0x1ac,等等整型
T_LOGICAL_ANDand邏輯運算符
T_LOGICAL_ORor邏輯運算符
T_LOGICAL_XORxor邏輯運算符
T_MINUS_EQUAL-=賦值運算符
T_ML_COMMENT/* 和 */注解(僅用於 PHP 4)
T_MOD_EQUAL%=賦值運算符
T_MUL_EQUAL*=賦值運算符
T_NEWnew類和物件
T_NUM_STRING  
T_OBJECT_CAST(object)類型轉換
T_OBJECT_OPERATOR->類和物件
T_OLD_FUNCTIONold_functionold_function
T_OPEN_TAG<?php, <? 或 <%從 HTML 轉義
T_OPEN_TAG_WITH_ECHO<?= or <%=從 HTML 轉義
T_OR_EQUAL|=賦值運算符
T_PAAMAYIM_NEKUDOTAYIM::::。也定義為 T_DOUBLE_COLON
T_PLUS_EQUAL+=賦值運算符
T_PRINTprint()print()
T_PRIVATEprivate類和物件。僅用於 PHP 5。
T_PUBLICpublic類和物件。僅用於 PHP 5。
T_PROTECTEDprotected類和物件。僅用於 PHP 5。
T_REQUIRErequire()require()
T_REQUIRE_ONCErequire_once()require_once()
T_RETURNreturn返回值
T_SL<<位運算符
T_SL_EQUAL<<=賦值運算符
T_SR>>位運算符
T_SR_EQUAL>>=賦值運算符
T_START_HEREDOC<<<heredoc 語法
T_STATICstatic變量範圍
T_STRING  
T_STRING_CAST(string)類型轉換
T_STRING_VARNAME  
T_SWITCHswitchswitch
T_THROWthrowu? 20 章(自 PHP 5.0.0 起可用)
T_TRYtryu? 20 章(自 PHP 5.0.0 起可用)
T_UNSETunset()unset()
T_UNSET_CAST(unset)(無文件; 類型為 NULL
T_USEuse(未實現)
T_VARvar類和物件
T_VARIABLE$foo變量
T_WHILEwhilewhiledo..while
T_WHITESPACE  
T_XOR_EQUAL^=賦值運算符
T_FUNC_C__FUNCTION__常量,自 PHP 4.3.0 起可用
T_CLASS_C__CLASS__常量,自 PHP 4.3.0 起可用

參見 token_name()