Tokenizer
PHP Manual

Przykłady

Poniżej zamieszczony jest prosty przykład skryptu PHP, który używa tokenizera. Skrypt wczytuje plik PHP, usuwa wszystkie komentarze z kodu źródłowego i wyświetla sam czysty kod.

Przykład #1 Usuwanie komentarzy za pomocą tokenizera

<?php
  
/* T_ML_COMMENT nie istnieje w PHP 5.
   * Następujące trzy linie definiują tę stałą, by zachować kompatybilność
   * wsteczną.
   *
   * Kolejne dwie linie definiują istniejącą tylko w PHP 5 stałą
   * T_DOC_COMMENT, którą w PHP 4 podmienimy jako T_ML_COMMENT.
   */
  
if (!defined('T_ML_COMMENT')) {
    
define('T_ML_COMMENT'T_COMMENT);
  } else {
    
define('T_DOC_COMMENT'T_ML_COMMENT);
  }

  
$kod file_get_contents("jakisplik.php");
  
$tokeny token_get_all($kod);

  foreach (
$tokeny as $token) {
    if (
is_string($token)) {
      
// prosty token jednoznakowy
      
echo $token;
    } else {
      
// tablica definiująca token
      
list($id$tekst) = $token;

      switch (
$id) {
        case 
T_COMMENT:
        case 
T_ML_COMMENT// to zdefiniowaliśmy
        
case T_DOC_COMMENT// to też
          // brak akcji dla komentarzy
          
break;
        default:
          
// wszystko inne -> wyświetl "takie, jakie jest"
          
echo $tekst;
          break;
      }
    }
  }
?>

Tokenizer
PHP Manual