prewk / serialized-to-ast
将序列化的PHP数据解析为抽象语法树(AST)
0.1.0
2018-04-30 14:35 UTC
Requires
- php: >=7.0
Requires (Dev)
- leanphp/phpspec-code-coverage: ^4.1
- phpspec/phpspec: ^4.3
- satooshi/php-coveralls: ^2.0
- vimeo/psalm: ^1.1
This package is auto-updated.
Last update: 2024-08-29 04:48:31 UTC
README
将序列化的PHP数据解析为简单的抽象语法树,无需反序列化。
示例
class Test { private $foo = "Private Foo"; public $bar = 12345; protected $baz = ["lorem", "ipsum" => "dolor amet", 67890]; } $parser = new Prewk\SerializedToAst; $node = $parser->parse(serialize(new Test)); // Array representation.. $arrayAst = $node->toArray(); // ..or JSON (see below) $jsonAst = json_encode($node);
{
"type": "object",
"public_properties": {
"bar": {
"type": "integer",
"value": 12345
}
},
"protected_properties": {
"baz": {
"type": "array",
"items": {
"0": {
"type": "string",
"value": "lorem"
},
"ipsum": {
"type": "string",
"value": "dolor amet"
},
"1": {
"type": "integer",
"value": 67890
}
}
}
},
"private_properties": {
"foo": {
"type": "string",
"value": "Private Foo"
}
}
}
安装
composer require prewk/serialized-to-ast
适用于
- 布尔值
- 整数
- 字符串
- 浮点数
- 空值
- 数组
- 对象
如果提供其他类型的数据,则会报错。
警告:实验性,未对边缘情况进行测试。
许可协议
MIT