PhpToken::tokenize

(PHP 8)

PhpToken::tokenize将给定的源代码拆分为 PHP 符号,并以 PhpToken 对象的形式表示。

描述

public static PhpToken::tokenize(string $code, int $flags = 0): array

返回一个 PhpToken 对象数组,表示给定的 code

参数

code

要解析的 PHP 源代码。

flags

有效标志

  • TOKEN_PARSE - 识别在特定上下文中使用保留字的能力。

返回值

一个 PHP 符号数组,由 PhpToken 或其后代的实例表示。此方法返回 static[],以便 PhpToken 可以无缝扩展。

示例

示例 #1 PhpToken::tokenize() 示例

<?php
$tokens
= PhpToken::tokenize('<?php echo; ?>');

foreach (
$tokens as $token) {
echo
"Line {$token->line}: {$token->getTokenName()} ('{$token->text}')", PHP_EOL;
}

上面的示例将输出

Line 1: T_OPEN_TAG ('<?php ')
Line 1: T_ECHO ('echo')
Line 1: ; (';')
Line 1: T_WHITESPACE (' ')
Line 1: T_CLOSE_TAG ('?>')

示例 #2 扩展 PhpToken

<?php

class MyPhpToken extends PhpToken {
public function
getUpperText() {
return
strtoupper($this->text);
}
}

$tokens = MyPhpToken::tokenize('<?php echo; ?>');
echo
"'{$tokens[0]->getUpperText()}'";

上面的示例将输出

'<?PHP '

参见

添加备注

用户贡献的备注

此页面没有用户贡献的备注。
To Top