Podręcznik PHP
Poprzedni |  | Następny

# token_get_all

(PHP 4 >= 4.2.0, PHP 5)

token_get_all -- Dzieli zadane źródło na tokeny PHP

## Opis

array token_get_all ( string ź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. Funkcja ta zwraca tablicę identyfikatorów tokenów. Każdy identyfikator tokena jest allbo pojedynczym znakiem (np.: `;`, `.`, `>`, `!`, itd...), albo dwuelementową tablicą zawierającą indeks tokena w elemencie 0, i zawartość oryginalengo tokena w postaci ciągu znakowego w elemencie 1.

Listę tokenów identyfikowanych przez parser znajdziesz w Dodatek P, możesz także użyć funkcji token_name() by przetłumaczyć wartość tokena na jego nazwę.

Przykład 1. Przykłady użycia token_get_all()

`<?php
$tokeny = token_get_all('<?php'); // => array(array(T_OPEN_TAG, '<?'));
$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. */'));
?>`

Poprzedni | Spis treści | Następny
Funkcje Tokenizera | Początek rozdziału | token_name