2024 年 PHP 日本大会

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 - 识别在特定上下文中使用保留字的能力。

返回值

由 PhpToken 或其子类的实例表示的 PHP 标记数组。此方法返回 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