Tokenizer
PHP Manual

Exemples

Voici un exemple simple de script PHP utilisant le tokenizer ; il lit un fichier PHP, supprime tous les commentaires de la source, et affiche uniquement le code.

Exemple #1 Supprime les commentaires avec le tokenizer

<?php
/*
* T_ML_COMMENT n'existe pas en PHP 5.
* Les lignes suivantes le définisse afin de rendre
* compatible notre code.
*
* Ensuite, les 2 lignes définissent T_DOC_COMMENT uniquement pour PHP 5,
* que nous masquons en T_ML_COMMENT pour PHP 4.
*/
if (!defined('T_ML_COMMENT')) {
   
define('T_ML_COMMENT'T_COMMENT);
} else {
   
define('T_DOC_COMMENT'T_ML_COMMENT);
}

$source file_get_contents('example.php');
$tokens token_get_all($source);

foreach (
$tokens as $token) {
   if (
is_string($token)) {
       
// un simple caractère token
       
echo $token;
   } else {
       
// tableau token
       
list($id$text) = $token;

       switch (
$id) { 
           case 
T_COMMENT
           case 
T_ML_COMMENT// nous avons défini ceci
           
case T_DOC_COMMENT// et ceci
               // Aucune action sur les commentaires
               
break;

           default:
               
// rien d'autre -> affiche "as is"
               
echo $text;
               break;
       }
   }
}
?>

Tokenizer
PHP Manual