token_get_all
En esta página
token_get_all
Divide la fuente dada en tokens PHP
Descripción#
token_get_all(string $code, [int $flags]): array
```php
`token_get_all` parsea el string de la `source` dada en tokens PHP usando el escaneador de léxico de Zend Engine.
Para ver la lista de los tokens analizados, vea [???](#tokens), o use `token_name` para traducir un valor token en su representación en string.
## Parámetros
`source`
La fuente PHP a analizar.
`flags`
Banderas válidas:
- `TOKEN_PARSE` - Reconoce la capacidad de usar palabras reservadas en contextos específicos.
## Valores devueltos
Un array de tokens identificadores. Cada token identificador individual es al mismo tiempo un carácter único (por ejemplo: `;`, `.`, `>`, `!`, etc...), un array de tres elementos conteniendo el índice de token en el elemento 0, el contenido del string del token original en el elemento 1 y el número de línea en el elemento 2.
## Ejemplos
`token_get_all` ejemplos
');
foreach ($tokens as $token) { if (is_array($token)) { echo "Line {$token[2]}: ", token_name($token[0]), " ('{$token[1]}')", PHP_EOL; } } ?>
Resultado del ejemplo anterior es similar a:
Line 1: T_OPEN_TAG ('<?php ')
Line 1: T_ECHO ('echo')
Line 1: T_WHITESPACE (' ')
Line 1: T_CLOSE_TAG ('?>')
`token_get_all` ejemplo de uso incorrecto
Resultado del ejemplo anterior es similar a:
Line 1: T_INLINE_HTML ('/* comment */')
Ten en cuenta en el ejemplo anterior que la cadena se analiza como `T_INLINE_HTML` en lugar del esperado `T_COMMENT`. Esto se debe a que no se utilizó ninguna etiqueta de apertura en el código proporcionado. Esto sería equivalente a colocar un comentario fuera de las etiquetas PHP en un archivo normal.
`token_get_all` en un ejemplo de clase que usa una palabra reservada
```php
Resultado del ejemplo anterior es similar a:
T_OPEN_TAG
T_WHITESPACE
T_CLASS
T_WHITESPACE
T_STRING
T_CONST
T_WHITESPACE
T_STRING
T_LNUMBER
Sin la bandera TOKEN_PARSE, el penúltimo token (T_STRING) habría sido T_PUBLIC.
Véase también#
PhpToken::tokenize, token_name