Liste des tokens de l'analyseur
De nombreuses parties du langage PHP sont représentées en interne par des tokens. Littéralement, ce sont des trucs, ou jetons. Ici, des briques de base, comme T_SR. PHP affiche des identifiants comme celui-ci dans les erreurs d'analyse, 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 identifiants, la syntaxe PHP correspondante, et les références appropriées au manuel.
Note: Utilisation des constantes T_*
Tous les tokens listés ci-dessous sont également définis comme constantes PHP. Leurs valeurs sont automatiquement générées suivant l'infrastructure sous jacente de PHP. Ceci signifie que la valeur concrète d'un token peut changer entre deux versions de PHP. Par exemple, la constante
T_FILE
vaut 365 en PHP 5.3, alors que la même valeur se réfère maintenant à la constanteT_TRAIT
en PHP 5.4 et la valeur de la constanteT_FILE
est de 369. Ceci signifie que votre code ne doit jamais utiliser la valeur littérale des constantes T_* depuis une version PHP X.Y.Z et ce, afin d'assurer une meilleure portabilité entre plusieurs versions de PHP. À la place, votre code doit utiliser les valeurs (utilisation de très grand nombre comme 10000) ainsi qu'une stratégie appropriée qui fonctionnera à la fois avec les versions de PHP et les valeurs T_*.
Token | Syntaxe | Référence |
---|---|---|
T_ABSTRACT |
abstract | Abstraction de classes |
T_AND_EQUAL |
&= | opérateurs d'assignation |
T_ARRAY |
array() | array(), syntaxe de tableau |
T_ARRAY_CAST |
(array) | transtypage |
T_AS |
as | foreach |
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) ou (boolean) | transtypage |
T_BREAK |
break; | break |
T_CALLABLE |
callable | callable |
T_CASE |
case | switch |
T_CATCH |
catch | Les exceptions |
T_CHARACTER |
Plus utilisé actuellement | |
T_CLASS |
class | classes et objets |
T_CLASS_C |
__CLASS__ | constantes magiques |
T_CLONE |
clone | classes et objets |
T_CLOSE_TAG |
?> or %> | échapper depuis le HTML |
T_COALESCE |
?? | opérateurs de comparaison (disponible depuis PHP 7.0.0) |
T_COMMENT |
// ou #, et /* */ | commentaires |
T_CONCAT_EQUAL |
.= | opérateurs d'assignation |
T_CONST |
const | constantes de classe |
T_CONSTANT_ENCAPSED_STRING |
"foo" ou 'bar' | syntaxe chaîne de caractères |
T_CONTINUE |
continue | continue |
T_CURLY_OPEN |
{$ | syntaxe d'analyse de variable complexe |
T_DEC |
-- | opérateurs d'incrémention/décrémention |
T_DECLARE |
declare | declare |
T_DEFAULT |
default | switch |
T_DIR |
__DIR__ | constantes magiques (disponible depuis PHP 5.3.0) |
T_DIV_EQUAL |
/= | opérateurs d'assignation |
T_DNUMBER |
0.12, etc. | nombres à virgule flottante |
T_DOC_COMMENT |
/** */ | style de commentaire dans la PHPDoc |
T_DO |
do | do...while |
T_DOLLAR_OPEN_CURLY_BRACES |
${ | syntaxe de variable complexe analysée |
T_DOUBLE_ARROW |
=> | syntaxe de tableau |
T_DOUBLE_CAST |
(real), (double) ou (float) | transtypage |
T_DOUBLE_COLON |
:: | Voyez T_PAAMAYIM_NEKUDOTAYIM plus bas |
T_ECHO |
echo | echo |
T_ELLIPSIS |
... | les arguments de fonction (disponible depuis PHP 5.6.0) |
T_ELSE |
else | else |
T_ELSEIF |
elseif | elseif |
T_EMPTY |
empty | empty() |
T_ENCAPSED_AND_WHITESPACE |
" $a" | partie des constantes d'une chaîne de caractères contenant des variables |
T_ENDDECLARE |
enddeclare | declare, syntaxe alternative |
T_ENDFOR |
endfor | for, syntaxe alternative |
T_ENDFOREACH |
endforeach | foreach, syntaxe alternative |
T_ENDIF |
endif | if, syntaxe alternative |
T_ENDSWITCH |
endswitch | switch, syntaxe alternative |
T_ENDWHILE |
endwhile | while, syntaxe alternative |
T_END_HEREDOC |
syntaxe heredoc | |
T_EVAL |
eval() | eval() |
T_EXIT |
exit ou die | exit(), die() |
T_EXTENDS |
extends | extends, classes et objets |
T_FILE |
__FILE__ | constantes magiques |
T_FINAL |
final | Mot-clé "final" |
T_FINALLY |
finally | Les exceptions (disponible depuis PHP 5.5.0) |
T_FOR |
for | for |
T_FOREACH |
foreach | foreach |
T_FUNCTION |
function or cfunction | fonctions |
T_FUNC_C |
__FUNCTION__ | constantes magiques |
T_GLOBAL |
global | scope de variable |
T_GOTO |
goto | goto (disponible depuis PHP 5.3.0) |
T_HALT_COMPILER |
__halt_compiler() | __halt_compiler (disponible depuis PHP 5.1.0) |
T_IF |
if | if |
T_IMPLEMENTS |
implements | Interfaces |
T_INC |
++ | opérateurs d'incrémention/décrémention |
T_INCLUDE |
include() | include |
T_INCLUDE_ONCE |
include_once() | include_once |
T_INLINE_HTML |
texte en dehors de PHP | |
T_INSTANCEOF |
instanceof | opérateurs de type |
T_INSTEADOF |
insteadof | Traits (disponible depuis PHP 5.4.0) |
T_INT_CAST |
(int) ou (integer) | transtypage |
T_INTERFACE |
interface | Interfaces |
T_ISSET |
isset() | 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 |
!= ou <> | opérateurs de comparaison |
T_IS_NOT_IDENTICAL |
!== | opérateurs de comparaison |
T_IS_SMALLER_OR_EQUAL |
<= | opérateurs de comparaison |
T_SPACESHIP |
<=> | opérateurs de comparaison (disponible depuis PHP 7.0.0) |
T_LINE |
__LINE__ | constantes magiques |
T_LIST |
list() | list() |
T_LNUMBER |
123, 012, 0x1ac, etc. | entiers |
T_LOGICAL_AND |
and | opérateurs logiques |
T_LOGICAL_OR |
or | opérateurs logiques |
T_LOGICAL_XOR |
xor | opérateurs logiques |
T_METHOD_C |
__METHOD__ | constantes magiques |
T_MINUS_EQUAL |
-= | opérateurs d'assignation |
T_MOD_EQUAL |
%= | opérateurs d'assignation |
T_MUL_EQUAL |
*= | opérateurs d'assignation |
T_NAMESPACE |
namespace | namespaces (disponible PHP 5.3.0) |
T_NS_C |
__NAMESPACE__ | namespaces (disponible depuis PHP 5.3.0) |
T_NS_SEPARATOR |
\ | namespaces (disponible depuis PHP 5.3.0) |
T_NEW |
new | classes et objets |
T_NUM_STRING |
"$a[0]" | index d'un tableau numérique se trouvant dans une chaîne de caractères |
T_OBJECT_CAST |
(object) | transtypage |
T_OBJECT_OPERATOR |
-> | classes et objets |
T_OPEN_TAG |
<?php, <? or <% | sortie du mode HTML |
T_OPEN_TAG_WITH_ECHO |
<?= ou <%= | sortie du mode HTML |
T_OR_EQUAL |
|= | opérateurs d'assignation |
T_PAAMAYIM_NEKUDOTAYIM |
:: | ::. Définie également
en tant que T_DOUBLE_COLON . |
T_PLUS_EQUAL |
+= | opérateurs d'assignation |
T_POW |
** | les opérateurs arithmétiques (disponible depuis PHP 5.6.0) |
T_POW_EQUAL |
**= | les opérateurs d'affectation. (disponible depuis PHP 5.6.0) |
T_PRINT |
print() | |
T_PRIVATE |
private | classes et objets |
T_PUBLIC |
public | classes et objets |
T_PROTECTED |
protected | classes et objets |
T_REQUIRE |
require() | require |
T_REQUIRE_ONCE |
require_once() | require_once |
T_RETURN |
return | valeurs 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_STATIC |
static | scope de variable |
T_STRING |
parent, self, etc. | identifiants, e.g. mots-clés comme parent et
self, noms de fonctions, classes et autres, correspondent.
Voir aussi T_CONSTANT_ENCAPSED_STRING .
|
T_STRING_CAST |
(string) | transtypage |
T_STRING_VARNAME |
"${a | syntaxe d'analyse d'une variable complexe |
T_SWITCH |
switch | switch |
T_THROW |
throw | Les exceptions |
T_TRAIT |
trait | Traits (disponible depuis PHP 5.4.0) |
T_TRAIT_C |
__TRAIT__ | __TRAIT__ (disponible depuis PHP 5.4.0) |
T_TRY |
try | Les exceptions |
T_UNSET |
unset() | unset() |
T_UNSET_CAST |
(unset) | type-casting |
T_USE |
use | namespaces (disponible depuis PHP 5.3.0) |
T_VAR |
var | classes et objets |
T_VARIABLE |
$foo | variables |
T_WHILE |
while | while, do...while |
T_WHITESPACE |
\t \r\n | |
T_XOR_EQUAL |
^= | opérateurs d'assignation |
T_YIELD |
yield | générateurs (disponible depuis PHP 5.5.0) |
T_YIELD_FROM |
yield from | générateurs (disponible depuis PHP 7.0.0) |
Voir aussi token_name().
Version en cache
24/11/2024 05:13:23 Cette version de la page est en cache (à la date du 24/11/2024 05:13:23) afin d'accélérer le traitement. Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la dernère version de la page.Document créé le 30/01/2003, dernière modification le 26/10/2018
Source du document imprimé : https://www.gaudry.be/php-rf-tokens.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.