Список тегів (tokens) парсера
Різні частини PHP внутрішньо представлені токенами. Фрагмент коду, що містить неприпустиму послідовність токенів, може призвести до таких помилок, як Parse error: syntax error, unexpected token "==", expecting "(" in script.php on line 10."
, где токен==
внутренне представлен как**T_IS_EQUAL
**
У наведеній нижче таблиці перераховані всі токени. Вони також доступні як константи PHP.
Зауваження Використання T_*констант
Значення T_* константи автоматично генеруються на основі базової інфраструктури синтаксичного аналізатора PHP. Це означає, що конкретне значення мітки може змінюватись між двома версіями PHP. Це означає, що ваш код ніколи не повинен безпосередньо покладатися на вихідні значення T_*, взяті з версії PHP X.Y.Z, щоб забезпечити деяку сумісність між кількома версіями PHP.
Щоб використовувати T_* константи у кількох версіях PHP, невизначені константи можуть бути визначені користувачем (з використанням великих чисел, таких як
10000
) з відповідною стратегією, яка працюватиме як з версіями PHP, так і зі значеннями T_* Loading...
Мітки
Метка | Синтаксис | Ссылка |
---|---|---|
T_ABSTRACT | abstract | Абстрактні класи |
T_AMPERSAND_FOLLOWED_BY_VAR_OR_VARARG | & | Оголошення типів (доступно, починаючи з PHP 8.1.0) |
T_AMPERSAND_NOT_FOLLOWED_BY_VAR_OR_VARARG | & | Оголошення типів (доступно, починаючи з PHP 8.1.0) |
T_AND_EQUAL | &= | оператори присвоєння |
T_ARRAY | array() | array()синтаксис масиву |
T_ARRAY_CAST | (array) | приведення типу |
T_AS | as | foreach |
T_ATTRIBUTE | #[ | attributes (доступно з PHP 8.0.0) |
T_BAD_CHARACTER | все, що нижче ASCII 32 виключаючи \t (0x09), \n (0x0a) та \r (0x0d) (доступно з PHP 7.4.0) | |
T_BOOLEAN_AND | && | логічні оператори |
T_BOOLEAN_OR | ||
T_BOOL_CAST | (bool) або (boolean) | приведення типу |
T_BREAK | break | break |
T_CALLABLE | callable | callable |
T_CASE | case | switch |
T_CATCH | catch | Винятки |
T_CLASS | class | класи та об'єкти |
T_CLASS_C | __CLASS__ | магічні константи |
T_CLONE | clone | класи та об'єкти |
T_CLOSE_TAG | ?> або %> | PHP-код усередині HTML |
T_COALESCE | ?? | оператори порівняння |
T_COALESCE_EQUAL | ??= | оператори присвоєння (доступно з PHP 7.4.0) |
T_COMMENT | // або #, та /* * | коментарі |
T_CONCAT_EQUAL | .= | оператори присвоєння |
T_CONST | const | константи класу |
T_CONSTANT_ENCAPSED_STRING | "foo" або 'bar' | рядковий синтаксис |
T_CONTINUE | continue | continue |
T_CURLY_OPEN | {$ | змінні всередині рядки |
T_DEC | -- | оператори інкременту\декременту |
T_DECLARE | declare | declare |
T_DEFAULT | default | switch |
T_DIR | __DIR__ | магічні константи |
T_DIV_EQUAL | /= | оператори присвоєння |
T_DNUMBER | 0.12 і т.д. | числа з плаваючою точкою |
T_DO | do | do..while |
T_DOC_COMMENT | ** * | PHPDoc-коментарі |
T_DOLLAR_OPEN_CURLY_BRACES | ${ | змінна всередині рядка |
T_DOUBLE_ARROW | => | синтаксис масивів |
T_DOUBLE_CAST | (real), (double) або (float) | приведення типів |
T_DOUBLE_COLON | :: | Дивіться нижче T_PAAMAYIM_NEKUDOTAYIM |
T_ECHO | echo | echo |
T_ELLIPSIS | ... | аргументи функції |
T_ELSE | else | else |
T_ELSEIF | elseif | elseif |
T_EMPTY | empty | empty() |
T_ENCAPSED_AND_WHITESPACE | " $a" | константна частина рядка зі змінними |
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_ENUM | enum | Перерахування (доступно, починаючи з PHP 8.1.0) |
T_END_HEREDOC | синтаксис heredoc | |
T_EVAL | eval() | eval() |
T_EXIT | exit або die | exit()die() |
T_EXTENDS | extends | extendsкласи та об'єкти |
T_FILE | __FILE__ | магічні константи |
T_FINAL | final | Ключове слово final |
T_FINALLY | finally | Винятки |
T_FN | fn | стрілочні функції (доступно з PHP 7.4.0) |
T_FOR | for | for |
T_FOREACH | foreach | foreach |
T_FUNCTION | function | функції |
T_FUNC_C | __FUNCTION__ | магічні константи |
T_GLOBAL | global | область видимості змінної |
T_GOTO | goto | goto |
T_HALT_COMPILER | __halt_compiler() | __halt_compiler |
T_IF | if | if |
T_IMPLEMENTS | implements | Інтерфейси об'єктів |
T_INC | ++ | оператори інкременту\декременту |
T_INCLUDE | include | include |
T_INCLUDE_ONCE | include_once | include_once |
T_INLINE_HTML | текст поза PHP | |
T_INSTANCEOF | instanceof | оператори типу |
T_INSTEADOF | insteadof | Трейти |
T_INTERFACE | interface | Інтерфейси об'єктів |
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_IS_SMALLER_OR_EQUAL | <= | оператори порівняння |
T_LINE | __LINE__ | магічні константи |
T_LIST | list() | list() |
T_LNUMBER | 123, 012, 0x1ac і т.д. | цілі числа |
T_LOGICAL_AND | and | логічні оператори |
T_LOGICAL_OR | or | логічні оператори |
T_LOGICAL_XOR | xor | логічні оператори |
T_MATCH | match | match (доступно з PHP 8.0.0) |
T_METHOD_C | __METHOD__ | магічні константи |
T_MINUS_EQUAL | -= | оператори присвоєння |
T_MOD_EQUAL | %= | оператори присвоєння |
T_MUL_EQUAL | *= | оператори присвоєння |
T_NAMESPACE | namespace | простору імен |
T_NAME_FULLY_QUALIFIED | \App\Namespace | простору імен (доступно, починаючи з PHP 8.0.0) |
T_NAME_QUALIFIED | App\Namespace | простору імен (доступно, починаючи з PHP 8.0.0) |
T_NAME_RELATIVE | namespace\Namespace | простору імен (доступно, починаючи з PHP 8.0.0) |
T_NEW | new | класи та об'єкти |
T_NS_C | __NAMESPACE__ | простору імен |
T_NS_SEPARATOR | \ | простору імен |
T_NUM_STRING | "$a[ ]" | цифровий індекс масиву всередині рядка |
T_OBJECT_CAST | (object) | приведення типів |
T_OBJECT_OPERATOR | -> | класи та об'єкти |
T_NULLSAFE_OBJECT_OPERATOR | ?-> | класи та об'єкти |
T_OPEN_TAG | PHP-код усередині HTML | |
T_OPEN_TAG_WITH_ECHO | PHP-код усередині HTML | |
T_OR_EQUAL | = | |
T_PAAMAYIM_NEKUDOTAYIM | :: | ::. . Також визначається як T_DOUBLE_COLON |
T_PLUS_EQUAL | += | оператори присвоєння |
T_POW | ** | арифметичні оператори |
T_POW_EQUAL | **= | оператори присвоєння |
T_PRINT | ||
T_PRIVATE | private | класи та об'єкти |
T_PROTECTED | protected | класи та об'єкти |
T_PUBLIC | public | класи та об'єкти |
T_READONLY | readonly | класи та об'єкти (доступно, починаючи з PHP 8.1.0) |
T_REQUIRE | require | require |
T_REQUIRE_ONCE | require_once | require_once |
T_RETURN | return | значення, що повертаються |
T_SL | << | побітові оператори |
T_SL_EQUAL | <<= | оператори присвоєння |
T_SPACESHIP | <=> | Оператори порівняння |
T_SR | >> | побітові оператори |
T_SR_EQUAL | >>= | оператори присвоєння |
T_START_HEREDOC | <<< | синтаксис heredoc |
T_STATIC | static | область видимості змінної |
T_STRING | parent, self і т.п. | ідентифікатори, наприклад, ключові слова на кшталт parent иself , сюди підходять імена функцій, класів та інших. Дивіться також T_CONSTANT_ENCAPSED_STRING |
T_STRING_CAST | (string) | приведення типів |
T_STRING_VARNAME | "${a | змінні всередині рядки |
T_SWITCH | switch | switch |
T_THROW | throw | Винятки |
T_TRAIT | trait | Трейти |
T_TRAIT_C | __TRAIT__ | __TRAIT__ |
T_TRY | try | Винятки |
T_UNSET | unset() | unset() |
T_UNSET_CAST | (unset) | приведення типів |
T_USE | use | простору імен |
T_VAR | var | класи та об'єкти |
T_VARIABLE | $foo | змінні |
T_WHILE | while | whiledo..while |
T_WHITESPACE | \t \r\n | |
T_XOR_EQUAL | ^= | оператори присвоєння |
T_YIELD | yield | генератори |
T_YIELD_FROM | yield from | generators |
Смотрите такжеtoken_name()