略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: PhpToken::tokenize

2024-04-30

PhpToken::tokenize

(PHP 8)

PhpToken::tokenizeSplits given source into PHP tokens, represented by PhpToken objects.

说明

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

Returns an array of PhpToken objects representing given code.

参数

code

The PHP source to parse.

flags

Valid flags:

  • TOKEN_PARSE - Recognises the ability to use reserved words in specific contexts.

返回值

An array of PHP tokens represented by instances of PhpToken or its descendants. This method returns static[] so that PhpToken can be seamlessly extended.

范例

示例 #1 PhpToken::tokenize() example

<?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 Extending PhpToken

<?php

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

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

以上例程会输出:

'<?PHP '

参见

add a noteadd a note

User Contributed Notes

There are no user contributed notes for this page.

官方地址:https://www.php.net/manual/en/phptoken.tokenize.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3