Lista semnelor interpretorului

Diverse părți ale limbajului PHP sunt reprezentate intern de tipuri precum T_SR. PHP afișează asemenea identificatori în erori de interpretare astfel: "Parse error: unexpected T_SR, expecting ',' or ';' in script.php on line 10."

Trebuie să cunoașteți ce reprezintă T_SR. Pentru cei ce nu cunosc, iată un tabel cu acești identificatori, sintaxa PHP și referințe către locurile corespunzătoare din manual.

Notă: Utilizarea constantelor T_*

Toate semnele afișate mai jos sunt de asemenea definite și ca constante PHP. Valorile lor este generată automat în baza infrastructurii din cadrul analizatorului PHP. Aceasta înseamnă că valoarea concretă a unui semn poate să se modifice între două versiuni PHP. Spre exemplu constanta T_FILE este 365 în PHP 5.3, în timp ce aceeași valoare acum se referă la T_TRAIT în PHP 5.4 și valoarea T_FILE este 369. Aceasta înseamnă că codul dumneavoastră nu trebuie să se bazeze direct pe valorile T_* originale ale PHP de versiunea X.Y.Z, pentru a oferi o compatibilitate între mai multe versiuni ale PHP. În loc, în codul dumneavoastră ar trebui să utilizați valori personalizate (de ex. numere mari cum ar fi 10000) și o strategie potrivită care va lucra cu ambele versiuni PHP și cu valorile T_*.

Semne
Semn Sintaxă Referință
T_ABSTRACT abstract Clase Abstracte (disponibil începând cu PHP 5.0.0)
T_AND_EQUAL &= operatori de atribuire
T_ARRAY array() array(), sintaxa tabloutilor
T_ARRAY_CAST (array) type-casting
T_AS as foreach
T_BAD_CHARACTER   orice caracter cu codul ASCII mai mic decât 32 cu excepția \t (0x09), \n (0x0a) și \r (0x0d)
T_BOOLEAN_AND && operatori logici
T_BOOLEAN_OR || operatori logici
T_BOOL_CAST (bool) sau (boolean) type-casting
T_BREAK break break
T_CALLABLE callable callable
T_CASE case switch
T_CATCH catch Exceptions (disponibil începând cu PHP 5.0.0)
T_CHARACTER   nu mai este utilizat
T_CLASS class clase și obiecte
T_CLASS_C __CLASS__ constante magice
T_CLONE clone clase și obiecte
T_CLOSE_TAG ?> sau %> evadarea din HTML
T_COMMENT // sau #, și /* */ comentarii
T_CONCAT_EQUAL .= operatori de atribuire
T_CONST const constante ale claselor
T_CONSTANT_ENCAPSED_STRING "foo" sau 'bar' sintaxa string-urilor
T_CONTINUE continue continue
T_CURLY_OPEN {$ sintaxa interpretată complexă a variabilei
T_DEC -- operatori de incrementare / decrementare
T_DECLARE declare declare
T_DEFAULT default switch
T_DIR __DIR__ constante magice (disponibile începând cu PHP 5.3.0)
T_DIV_EQUAL /= operatori de atribuire
T_DNUMBER 0.12, etc. numere cu virgulă flotantă
T_DOC_COMMENT /** */ comentarii în stil PHPDoc
T_DO do do..while
T_DOLLAR_OPEN_CURLY_BRACES ${ sintaxa variabilelor interpretate complex
T_DOUBLE_ARROW => sintaxa tablourilor
T_DOUBLE_CAST (real), (double) sau (float) type-casting
T_DOUBLE_COLON :: vezi T_PAAMAYIM_NEKUDOTAYIM mai jos
T_ECHO echo echo
T_ELLIPSIS ... argumentele funcțiilor (disponibilă începând cu PHP 5.6.0)
T_ELSE else else
T_ELSEIF elseif elseif
T_EMPTY empty empty()
T_ENCAPSED_AND_WHITESPACE " $a" partea constantă a șirurilor cu variabile
T_ENDDECLARE enddeclare declare, sintaxă alternativă
T_ENDFOR endfor for, sintaxă alternativă
T_ENDFOREACH endforeach foreach, sintaxă alternativă
T_ENDIF endif if, sintaxă alternativă
T_ENDSWITCH endswitch switch, sintaxă alternativă
T_ENDWHILE endwhile while, sintaxă alternativă
T_END_HEREDOC   sintaxă heredoc
T_EVAL eval() eval()
T_EXIT exit sau die exit(), die()
T_EXTENDS extends extends, clase și obiecte
T_FILE __FILE__ constante magice
T_FINAL final Cuvântul cheie Final
T_FINALLY finally Exceptions (disponibil începând cu PHP 5.5.0)
T_FOR for for
T_FOREACH foreach foreach
T_FUNCTION function sau cfunction funcții
T_FUNC_C __FUNCTION__ constante magice
T_GLOBAL global circumstanța variabilei
T_GOTO goto (disponibil începând cu PHP 5.3.0)
T_HALT_COMPILER __halt_compiler() __halt_compiler (disponibil începând cu PHP 5.1.0)
T_IF if if
T_IMPLEMENTS implements Object Interfaces
T_INC ++ operatori de incrementare / decrementare
T_INCLUDE include() include
T_INCLUDE_ONCE include_once() include_once
T_INLINE_HTML   text în afara PHP
T_INSTANCEOF instanceof operatori ai tipurilor
T_INSTEADOF insteadof Traits (disponibilă începând cu PHP 5.4.0)
T_INT_CAST (int) sau (integer) type-casting
T_INTERFACE interface Object Interfaces
T_ISSET isset() isset()
T_IS_EQUAL == operatori de comparare
T_IS_GREATER_OR_EQUAL >= operatori de comparare
T_IS_IDENTICAL === operatori de comparare
T_IS_NOT_EQUAL != sau <> operatori de comparare
T_IS_NOT_IDENTICAL !== operatori de comparare
T_IS_SMALLER_OR_EQUAL <= operatori de comparare
T_SPACESHIP <=> operatori de comparare (disponibil începând cu PHP 7.0.0)
T_LINE __LINE__ constante magice
T_LIST list() list()
T_LNUMBER 123, 012, 0x1ac, etc. întregi
T_LOGICAL_AND and operatori logici
T_LOGICAL_OR or operatori logici
T_LOGICAL_XOR xor operatori logici
T_METHOD_C __METHOD__ constante magice
T_MINUS_EQUAL -= operatori de atribuire
T_MOD_EQUAL %= operatori de atribuire
T_MUL_EQUAL *= operatori de atribuire
T_NAMESPACE namespace spațiile de nume (disponibile începând cu PHP 5.3.0)
T_NS_C __NAMESPACE__ spațiile de nume (disponibile începând cu PHP 5.3.0)
T_NS_SEPARATOR \ spațiile de nume (disponibile începând cu PHP 5.3.0)
T_NEW new clase și obiecte
T_NUM_STRING "$a[0]" indice numeric al tabloului în interiorul unui string
T_OBJECT_CAST (object) type-casting
T_OBJECT_OPERATOR -> clase și obiecte
T_OPEN_TAG <?php, <? sau <% evadarea din HTML
T_OPEN_TAG_WITH_ECHO <?= sau <%= evadarea din HTML
T_OR_EQUAL |= operatori de atribuire
T_PAAMAYIM_NEKUDOTAYIM :: ::. De asemenea definit ca T_DOUBLE_COLON.
T_PLUS_EQUAL += operatori de atribuire
T_POW ** operatori aritmetici (disponibil începând cu PHP 5.6.0)
T_POW_EQUAL **= operatori de atribuire (disponibil începând cu PHP 5.6.0)
T_PRINT print() print
T_PRIVATE private clase și obiecte
T_PUBLIC public clase și obiecte
T_PROTECTED protected clase și obiecte
T_REQUIRE require() require
T_REQUIRE_ONCE require_once() require_once
T_RETURN return întoarcerea valorilor
T_SL << operatori pe biți
T_SL_EQUAL <<= operatori de atribuire
T_SR >> operatori pe biți
T_SR_EQUAL >>= operatori de atribuire
T_START_HEREDOC <<< sintaxa heredoc
T_STATIC static circumstanța variabilei
T_STRING parent, self, etc. identificatori, de ex. cuvinte-cheie ca parent și self, denumiri de funcții, denumiri de clase și altele se potrivesc. A se vedea și T_CONSTANT_ENCAPSED_STRING.
T_STRING_CAST (string) type-casting
T_STRING_VARNAME "${a sintaxa complexă de interpretare a variabilelor
T_SWITCH switch switch
T_THROW throw Exceptions
T_TRAIT trait Traits (disponibilă începând cu PHP 5.4.0)
T_TRAIT_C __TRAIT__ __TRAIT__ (disponibilă începând cu PHP 5.4.0)
T_TRY try Exceptions
T_UNSET unset() unset()
T_UNSET_CAST (unset) type-casting
T_USE use spații de nume (disponibil începând cu PHP 5.3.0; rezervat începând cu PHP 4.0.0)
T_VAR var clase și obiecte
T_VARIABLE $foo variabile
T_WHILE while while, do..while
T_WHITESPACE \t \r\n  
T_XOR_EQUAL ^= operatori de atribuire
T_YIELD yield generators (disponibilă începând cu PHP 5.5.0)

A se vedea și token_name().