PHP 结构助手

0.0.2 2019-07-10 18:51 UTC

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
  • 测试覆盖率
  • 更多功能