tommyknocker / struct
PHP 结构助手
0.0.2
2019-07-10 18:51 UTC
Requires (Dev)
- phpunit/phpunit: ^7.4
This package is auto-updated.
Last update: 2024-09-11 14:17:21 UTC
README
简单使用。只需扩展 Struct 类,在您的类中定义模板,并根据定义的模板检查传入的数据。支持软检查与类型转换。
示例
<?php class Hit extends Tommyknocker\Struct\Struct { /** * Strict mode flag * @var bool */ protected $strict = false; /** * Track structure template * @var array */ protected $template = [ 'date' => 'string', 'type' => 'int', 'ip' => 'string', 'uuid' => 'string', 'referer' => 'string', ]; } $hit = new Hit([ 'date' => "2018-05-05", "type" => "1", "ip" => "127.0.0.1", "referer" => "http://google.com" ]); echo $hit->date; // "2018-05-05" echo $hit->type; // 1 $hit = new Hit([ 'date' => "2018-05-05", "type" => "1", "ip" => "127.0.0.1", "referer" => null ]); // Exception, cause referer cannot be null in defined template
计划
- 支持模板中的其他类。例如 "time" => Time::class
- 测试覆盖率
- 更多功能