phptdgram / schema
The PHP TD Gram Schema generated TdLib Schema Classes using phptdgram/schema-generator from td_api.tl file.
1.0.0
2020-04-13 06:55 UTC
Requires
- php: ^7.4||^8.0
- ext-json: *
Requires (Dev)
Suggests
- phptdgram/schema-generator: A tool to generate this schema from td_api.tl file
This package is auto-updated.
Last update: 2024-10-13 17:06:04 UTC
README
The PHP TD Gram Schema generated TdLib Schema Classes using phptdgram/schema-generator from td_api.tl file.
Based on TdLib td_api
v1.6.0 schema version
Install
Via Composer
$ composer require phptdgram/schema
Usage
<?php use PHPTdGram\Schema\TdSchemaRegistry; $input = [ '@type' => 'updateOption', 'name' => 'version', 'value' => [ '@type' => 'optionValueString', 'value' => '1.6.0', ], ]; TdSchemaRegistry::fromArray($input);
Will parse TdLib response to PHP Objects
class PHPTdGram\Schema\UpdateOption#3 (3) { protected string $name => string(7) "version" protected PHPTdGram\Schema\OptionValue $value => class PHPTdGram\Schema\OptionValueString#2 (2) { protected string $value => string(5) "1.6.0" public ?string $tdExtra => NULL } public ?string $tdExtra => NULL }
Another example:
<?php use PHPTdGram\Schema\TdSchemaRegistry; $input = [ '@extra' => 'foo', '@type' => 'updateAuthorizationState', 'authorization_state' => [ '@type' => 'authorizationStateWaitTdlibParameters', ], ]; TdSchemaRegistry::fromArray($input);
Will produce:
class PHPTdGram\Schema\UpdateAuthorizationState#3 (2) { protected PHPTdGram\Schema\AuthorizationState $authorizationState => class PHPTdGram\Schema\AuthorizationStateWaitTdlibParameters#2 (1) { public ?string $tdExtra => NULL } public ?string $tdExtra => string(3) "foo" }
Testing
Run PHP style checker
$ composer cs-check
Run PHP style fixer
$ composer cs-fix
Run all continuous integration tests
$ composer ci-run
Contributing
Please see CONTRIBUTING and CONDUCT for details.
License
Please see License File for more information.