PHP - Funciones de tokenizador
Las funciones de tokenizador pueden proporcionar una interfaz para el tokenizador de PHP integrado en Zend Engine. Al usar estas funciones, podemos escribir nuestras propias herramientas de análisis o modificación de fuentes PHP sin tener que lidiar con una especificación de lenguaje a nivel léxico.
Ejemplo
<?php
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)) {
// simple 1-character token
echo $token;
} else {
// token array
list($id, $text) = $token;
switch ($id) {
case T_COMMENT:
case T_ML_COMMENT: // we've defined this
case T_DOC_COMMENT: // and this
// no action on comments
break;
default:
// anything else -> output "as is"
echo $text;
break;
}
}
}
?>
No Señor | Función descriptiva |
---|---|
1 | Esta función puede dividir una fuente determinada en tokens PHP. |
2 | Esta función puede obtener el nombre simbólico de un token PHP determinado. |