php token封装类,4-1 PhpToken类

**一.PhpToken类简介**

#Token令牌生成器类

```

class PhpToken implements Stringable {

/**

* One of the T_* constants, or an integer < 256 representing a single-char token.

*/

public int $id;

/** The textual content of the token. */

public string $text;

/** The starting line number (1-based) of the token. */

public int $line;

/** The starting position (0-based) in the tokenized string. */

public int $pos;

/** @return static[] */

public static function tokenize(string $code, int $flags = 0): array {}

final public function __construct(int $id, string $text, int $line = -1, int $pos = -1) {}

/**

* Whether the token has the given ID, the given text,

* or has an ID/text part of the given array.

*/

public function is(int|string|array $kind): bool {}

/** Whether this token would be ignored by the PHP parser. */

public function isIgnorable(): bool {}

/** Get the name of the token. */

public function getTokenName(): ?string {}

/** Returns $text property */

public function __toString(): string {}

}

```

**二.生成Token**

1.token_get_all函数

```

$code='<?php echo 123 ?>';

$arr=token_get_all($code);

```

2.PhpToken类

```

$code='<?php echo 123 ?>';

$arr=PhpToken::tokenize($code);

```

**三.常用的属性**

```

$code='<?php echo 123 ?>';

$arr=PhpToken::tokenize($code);

```

#PhpToken对象

```

$obj=$arr[1];

echo $obj->id;

echo '
';

echo $obj->text;

echo '
';

echo $obj->line;

echo '
';

echo $obj->pos;

```

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值