Список Лексем Разборщика
Приложение I. Список Лексем Разборщика
Различные части языка PHP представляются внутренне болванками типа T_SR. PHP выводит идентификаторы типа этого таким образом: "Parse error: unexpected T_SR, expecting ',' or ';' in script.php on line 10."
Вы должны знать, что T_SR означает >>. Для тех, кто этого не помнит, дана следующая таблица с этими идентификаторами, PHP-синтаксис и ссылки на соответствующие места в учебнике.
Таблица I-1. Лексемы/Tokens
| Лескема | Синтаксис | Ссылка |
|---|---|---|
| T_AND_EQUAL | &= | операции присвоения |
| T_ARRAY | array() | array(), синтаксис массива |
| T_ARRAY_CAST | (array) | приведение типов |
| T_AS | as | foreach |
| T_BAD_CHARACTER | что-либо менее ASCII 32, за исключением \t (0x09), \n (0x0a) и \r (0x0d) | |
| T_BOOLEAN_AND | && | логические операции |
| T_BOOLEAN_OR | || | логические операции |
| T_BOOL_CAST | (bool) или (boolean) | приведение типов |
| T_BREAK | break; | break |
| T_CASE | case | switch |
| T_CHARACTER | ||
| T_CLASS | class | классы и объекты |
| T_CLOSE_TAG | ?> или %> | |
| T_COMMENT | // или # | комментарии |
| T_CONCAT_EQUAL | .= | операции присвоения |
| T_CONST | const | |
| T_CONSTANT_ENCAPSED_STRING | "foo" или 'bar' | синтаксис строк |
| T_CONTINUE | continue | |
| T_CURLY_OPEN | ||
| T_DEC | -- | операции инкремента/декремента |
| T_DECLARE | declare | declare |
| T_DEFAULT | default | switch |
| T_DIV_EQUAL | /= | операции присвоения |
| T_DNUMBER | 0.12, etc | числа с плавающей точкой |
| T_DO | do | do..while |
| T_DOLLAR_OPEN_CURLY_BRACES | ${ | разобранный синтаксис сложной переменной |
| T_DOUBLE_ARROW | => | синтаксис массива |
| T_DOUBLE_CAST | (real), (double) или (float) | приведение типов |
| T_ECHO | echo | echo() |
| T_ELSE | else | else |
| T_ELSEIF | elseif | elseif |
| T_EMPTY | empty | empty() |
| T_ENCAPSED_AND_WHITESPACE | ||
| T_ENDDECLARE | enddeclare | declare, альтернативный синтаксис |
| T_ENDFOR | endfor | for, альтернативный синтаксис |
| T_ENDFOREACH | endforeach | foreach, альтернативный синтаксис |
| T_ENDIF | endif | if, альтернативный синтаксис |
| T_ENDSWITCH | endswitch | switch, альтернативный синтаксис |
| T_ENDWHILE | endwhile | while, альтернативный синтаксис |
| T_END_HEREDOC | синтаксис heredoc | |
| T_EVAL | eval() | eval() |
| T_EXIT | exit или die | exit(), die() |
| T_EXTENDS | extends | extends, классы и объекты |
| T_FILE | __FILE__ | константы |
| T_FOR | for | for |
| T_FOREACH | foreach | foreach |
| T_FUNCTION | function или cfunction | функции |
| T_GLOBAL | global | область видимости переменной |
| T_IF | if | if |
| T_INC | ++ | операции инкремента/декремента |
| T_INCLUDE | include() | include() |
| T_INCLUDE_ONCE | include_once() | include_once() |
| T_INLINE_HTML | ||
| T_INT_CAST | (int) или (integer) | приведение типов |
| T_ISSET | isset() | isset() |
| T_IS_EQUAL | == | операции сравнения |
| T_IS_GREATER_OR_EQUAL | >= | операции сравнения |
| T_IS_IDENTICAL | === | операции сравнения |
| T_IS_NOT_EQUAL | != или <> | операции сравнения |
| T_IS_NOT_IDENTICAL | !== | операции сравнения |
| T_SMALLER_OR_EQUAL | <= | операции сравнения |
| T_LINE | __LINE__ | константы |
| T_LIST | list() | list() |
| T_LNUMBER | 123, 012, 0x1ac, etc | целые числа |
| T_LOGICAL_AND | and | логические операции |
| T_LOGICAL_OR | or | логические операции |
| T_LOGICAL_XOR | xor | логические операции |
| T_MINUS_EQUAL | -= | операции присвоения |
| T_ML_COMMENT | /* и */ | комментарии |
| T_MOD_EQUAL | %= | операции присвоения |
| T_MUL_EQUAL | *= | операции присвоения |
| T_NEW | new | классы и объекты |
| T_NUM_STRING | ||
| T_OBJECT_CAST | (object) | приведение типов |
| T_OBJECT_OPERATOR | -> | классы и объекты |
| T_OLD_FUNCTION | old_function | old_function |
| T_OPEN_TAG | <?php, <? или <% | выход из HTML |
| T_OPEN_TAG_WITH_ECHO | <?= или <%= | выход из HTML |
| T_OR_EQUAL | |= | операции присвоения |
| T_PAAMAYIM_NEKUDOTAYIM | :: | :: |
| T_PLUS_EQUAL | += | операции присвоения |
| T_PRINT | print() | print() |
| T_REQUIRE | require() | require() |
| T_REQUIRE_ONCE | require_once() | require_once() |
| T_RETURN | return | возвращаемые значения |
| T_SL | << | битовые операции |
| T_SL_EQUAL | <<= | операции присвоения |
| T_SR | >> | битовые операции |
| T_SR_EQUAL | >>= | операции присвоения |
| T_START_HEREDOC | <<< | синтаксис heredoc |
| T_STATIC | static | область видимости переменной |
| T_STRING | ||
| T_STRING_CAST | (string) | приведение типов |
| T_STRING_VARNAME | ||
| T_SWITCH | switch | switch |
| T_UNSET | unset() | unset() |
| T_UNSET_CAST | (unset) | (не задокументирована; приводится к NULL) |
| T_USE | use | (не реализована) |
| T_VAR | var | классы и объекты |
| T_VARIABLE | $foo | переменные |
| T_WHILE | while | while, do..while |
| T_WHITESPACE | ||
| T_XOR_EQUAL | ^= | операции присвоения |
| T_FUNC_C | __FUNCTION__ | константы, начиная с PHP 4.3.0 |
| T_CLASS_C | __CLASS__ | константы, начиная с PHP 4.3.0 |
