(PHP 4 >= 4.2.0, PHP 5)
token_get_all — Dzieli zadane źródło na tokeny PHP
$źródło
)
token_get_all() parsuje zadane
źródło
, czyli ciąg znaków zawierający kod PHP,
zamieniając je na tokeny języka PHP przy użyciu analizy leksykalnej
silnika Zend.
Listę tokenów identyfikowanych przez parser znajdziesz w List of Parser Tokens, możesz także użyć funkcji token_name() by przetłumaczyć wartość tokena na jego nazwę.
źródło
Źródło PHP do sparsowania.
Tablica zindentyfikowanych tokenów. Każdy pojedynczy token identyfikowany jest poprzez pojedynczy znak (np.: ;, ., >, !, etc...), lub trójelementową tablicę zawierającą indeks tokenu w elemencie 0 i łańcuch znaków zawierający oryginalny token w elemencie 1 i numer linii w elemencie 2.
Przykład #1 Przykłady użycia token_get_all()
<?php
$tokeny = token_get_all('<?php echo; ?>'); /* => array(
array(T_OPEN_TAG, '<?php'),
array(T_ECHO, 'echo'),
';',
array(T_CLOSE_TAG, '?>') ); */
.
/* W następnym przykładzie zwróć uwagę na fakt, iż ciąg znaków jest parsowany
jako T_INLINE_HTML, inaczej niż oczekiwane T_COMMENT (T_ML_COMMENT w PHP
<5). Jest tak z powodu braku w "kodzie" otwierających/zamykających tagów
PHP. Jest to jednoznaczne z komentarzem znajdującym się poza tagami <?php
?> w normalnym pliku. */
$tokeny = token_get_all('/* koment. */'); // => array(array(T_INLINE_HTML, '/* koment. */'));
?>
Wersja | Opis |
---|---|
5.2.2 | Numer linii jest zwracany w elemencie 2 |