imponeer / properties
添加定义具有严格数据类型行为的类变量的可能性
dev-main
2024-07-02 11:36 UTC
Requires
- php: >=5.5
- ext-curl: *
- ext-fileinfo: *
- guzzlehttp/guzzle: ^6.3 || ^7.0
- intervention/image: ^2.4
Requires (Dev)
- phpunit/phpunit: 5.*
Suggests
- ext-gd: Enable gd image for basic image information support
- ext-imagick: Enabled Imageck better image information support
This package is auto-updated.
Last update: 2024-09-08 23:36:04 UTC
README
属性
用于处理严格类型类变量的PHP库。此包只能用于为其他类添加功能。
安装
composer require imponeer/properties
使用
要将一些自定义属性支持添加到类中,首先需要扩展该类。以下是如何做到的示例
use Imponeer\Properties; class Base extends Properties { }
接下来,你需要在类构造函数中定义变量。以下是一个示例
use Imponeer\Properties; class Base extends Properties { public function __construct() { $this->initVar('varA', self::DTYPE_INTEGER, null, false); $this->initVar('varB', self::DTYPE_STRING, null, true, 150); $this->initVar('varC', self::DTYPE_INTEGER, 100, false); } }
然后就可以使用这样的变量。对于前面的示例,它会这样工作
// Creates instance $obj = new Base(); // Print current objects vars var_dump($obj->toArray()); // Modify vars with some integer values and prints $obj->varA = 57; $obj->varB = 58; $obj->varC = 59; var_dump($obj->toArray()); // Modify vars with some string values and prints $obj->varA = "A"; $obj->varB = "B"; $obj->varC = "C"; var_dump($obj->toArray());
如何贡献?
如果你想添加一些功能或修复错误,你可以分支、更改并创建pull请求。如果你不确定如何操作,可以尝试交互式GitHub教程。
如果你发现了任何错误或有问题,请使用问题标签并写下你的问题。