PhpToken::tokenize
PHP function
Edit on GitHub ✎
(PHP 8)
Splits given source into PHP tokens, represented by PhpToken objects.
Description
PhpToken::tokenize(string $code, int $flags = 0): array
Returns an array of PhpToken objects representing given code.
Parameters
codeThe PHP source to parse.
flagsValid flags:
TOKEN_PARSE- Recognises the ability to use reserved words in specific contexts.
Return Values
An array of PHP tokens represented by instances of PhpToken or its descendants. This method returns static[] so that PhpToken can be seamlessly extended.
Examples
PhpToken::tokenize() example
php
<?php
$tokens = PhpToken::tokenize('<?php echo; ?>');
foreach ($tokens as $token) {
echo "Line {$token->line}: {$token->getTokenName()} ('{$token->text}')", PHP_EOL;
}Outputs
output
Line 1: T_OPEN_TAG ('<?php ')
Line 1: T_ECHO ('echo')
Line 1: ; (';')
Line 1: T_WHITESPACE (' ')
Line 1: T_CLOSE_TAG ('?>')Extending PhpToken
php
<?php
class MyPhpToken extends PhpToken {
public function getUpperText() {
return strtoupper($this->text);
}
}
$tokens = MyPhpToken::tokenize('<?php echo; ?>');
echo "'{$tokens[0]->getUpperText()}'";Outputs
output
'<?PHP '