Moin!

Ich hab folgendes Stück Code im Internet gefunden:
PHP-Code:

$string 
"2*2";
$tokens token_get_all($string);
$saubererstring '';

foreach (
$tokens as $token) {
    if (
is_string($token)) {
        if (
strstr('*+-/%()'$token)) {
            
$saubererstring .= $token;
        }
    } else {
         
// token array
         
list($id$text) = $token;
         switch (
$id) { 
              case 
T_DNUMBER
              case 
T_LNUMBER:
                      
$saubererstring .= $text;
                    break;
         }
    }

Dieses überprüft einen String auf einen gültigen arithmetischen Ausdruck. Astatt dass mir token_get_all den String nun in Zahlen und Zeichen unterteilt und prüft bekomme ich als Resultat T_INLINE_HTML (311) sowie wieder den gesamten Ausdruck, womit die ganze Prüfung fehlschlägt.

Hat einer von Euch zufällig ne Idee warum das so ist? Hab von der Methode zuvor nie wirklich was gehört...

Besten Dank schomal...