Forum und email
token_get_all

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.

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

Parametry

źródło

Źródło PHP do sparsowania.

Zwracane wartości

Tablica zindentyfikowanych tokenów. Każdy pojedynczy token identyfikowany jest poprzez pojedynczy znak (np.: ;, ., >, !, etc...), lub dwuelementową tablicę zawierającą indeks tokenu w elemencie 0 i łąncuch znaków zawierający oryginalny token w elemencie 1.

Przykłady

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. */'));
?>