Annexe L. Liste des token de l'analyseur

De nombreuses parties du langage PHP sont représentées en interne par des trucs (NDT : litéralement) comme T_SR. PHP affiche des identifiants comme celui-ci dans les erreurs d'analyse, comme par exemple : unexpected T_SR, expecting ',' or ';' in script.php on line 10..

Vous êtes suppposé savoir ce que T_SR signifie. Pour ceux qui ne le savent pas, voici une liste de ces identifiant, la syntaxe PHP attenante, et les références appropriées au manuel.

Tableau L-1. Tokens

TokenSyntaxeRéférence
T_AND_EQUAL&=opérateurs d'assignation
T_ARRAYarray()array(), syntaxe de tableau
T_ARRAY_CAST(array)transtypage
T_ASasforeach
T_BAD_CHARACTER Tous les caractères en dessous de ASCII 32 excepté \t (0x09), \n (0x0a) et \r (0x0d)
T_BOOLEAN_AND&&opérateurs logiques
T_BOOLEAN_OR||opérateurs logiques
T_BOOL_CAST(bool) or (boolean)transtypage
T_BREAKbreak;break
T_CASEcaseswitch
T_CHARACTER  
T_CLASSclassclasses et objets
T_CLOSE_TAG?> ou %> 
T_COMMENT// ou #commentaires
T_CONCAT_EQUAL.=opérateurs d'assignation
T_CONSTconst 
T_CONSTANT_ENCAPSED_STRING"foo" or 'bar'syntaxe chaîne de caractères
T_CONTINUEcontinue 
T_CURLY_OPEN  
T_DEC--opérateurs d'incrémention/décrémention
T_DECLAREdeclaredeclare
T_DEFAULTdefaultswitch
T_DIV_EQUAL/=opérateurs d'assignation
T_DNUMBER0.12, etcnombres à virgule flottante
T_DOdodo..while
T_DOLLAR_OPEN_CURLY_BRACES${syntaxe de variable complexe analysée
T_DOUBLE_ARROW=>syntaxe de tableau
T_DOUBLE_CAST(real), (double) or (float)transtypage
T_ECHOechoecho()
T_ELSEelseelse
T_ELSEIFelseifelseif
T_EMPTYemptyempty()
T_ENCAPSED_AND_WHITESPACE  
T_ENDDECLAREenddeclaredeclare, syntaxe alternative
T_ENDFORendforfor, syntaxe alternative
T_ENDFOREACHendforeachforeach, syntaxe alternative
T_ENDIFendifif, syntaxe alternative
T_ENDSWITCHendswitchswitch, syntaxe alternative
T_ENDWHILEendwhilewhile, syntaxe alternative
T_END_HEREDOC syntaxe heredoc
T_EVALeval()eval()
T_EXITexit or dieexit(), die()
T_EXTENDSextendsextends, classes et objets
T_FILE__FILE__constantes
T_FORforfor
T_FOREACHforeachforeach
T_FUNCTIONfunction or cfunctionfonctions
T_GLOBALglobalscope de variable
T_IFifif
T_INC++opérateurs d'incrémention/décrémention
T_INCLUDEinclude()include()
T_INCLUDE_ONCEinclude_once()include_once()
T_INLINE_HTML  
T_INT_CAST(int) or (integer)transtypage
T_ISSETisset()isset()
T_IS_EQUAL==opérateurs de comparaison
T_IS_GREATER_OR_EQUAL>=opérateurs de comparaison
T_IS_IDENTICAL===opérateurs de comparaison
T_IS_NOT_EQUAL!= or <>opérateurs de comparaison
T_IS_NOT_IDENTICAL!==opérateurs de comparaison
T_SMALLER_OR_EQUAL<=opérateurs de comparaison
T_LINE__LINE__constants
T_LISTlist()list()
T_LNUMBER123, 012, 0x1ac, etcentiers
T_LOGICAL_ANDandopérateurs logiques
T_LOGICAL_ORoropérateurs logiques
T_LOGICAL_XORxoropérateurs logiques
T_MINUS_EQUAL-=opérateurs d'assignation
T_ML_COMMENT/* and */commentaires
T_MOD_EQUAL%=opérateurs d'assignation
T_MUL_EQUAL*=opérateurs d'assignation
T_NEWnewclasses et objets
T_NUM_STRING  
T_OBJECT_CAST(object)transtypage
T_OBJECT_OPERATOR->classes et objets
T_OLD_FUNCTIONold_functionold_function
T_OPEN_TAG<?php, <? or <%sortie du mode HTML
T_OPEN_TAG_WITH_ECHO<?= or <%=sortie du mode HTML
T_OR_EQUAL|=opérateurs d'assignation
T_PAAMAYIM_NEKUDOTAYIM::::
T_PLUS_EQUAL+=opérateurs d'assignation
T_PRINTprint()print()
T_REQUIRErequire()require()
T_REQUIRE_ONCErequire_once()require_once()
T_RETURNreturnvaleurs retournées
T_SL<<opérateurs sur les bits
T_SL_EQUAL<<=opérateurs d'assignation
T_SR>>opérateurs sur les bits
T_SR_EQUAL>>=opérateurs d'assignation
T_START_HEREDOC<<<syntaxe heredoc
T_STATICstaticscope de variable
T_STRING  
T_STRING_CAST(string)transtypage
T_STRING_VARNAME  
T_SWITCHswitchswitch
T_UNSETunset()unset()
T_UNSET_CAST(unset)(non documenté; forcé à NULL)
T_USEuse(pas implémenté)
T_VARvarclasses et objets
T_VARIABLE$foovariables
T_WHILEwhilewhile, do..while
T_WHITESPACE  
T_XOR_EQUAL^=opérateurs d'assignation
T_FUNC_C__FUNCTION__constantes, depuis PHP 4.3.0
T_CLASS_C__CLASS__constantes, depuis PHP 4.3.0