kerkit/ class-property-management
一个提供基于简单注解对类属性进行读写访问的库
v1.0.2
2021-06-08 16:40 UTC
Requires
- php: >=7.1
- doctrine/annotations: ^1.10
Requires (Dev)
- phpunit/phpunit: ^8.5
This package is auto-updated.
Last update: 2024-09-16 01:32:39 UTC
README
安装
使用以下命令安装最新版本:
$ composer require kerekit/class-property-management
用法
使用@Readable
和@Writable
PHP 文档块来提供对私有和受保护属性的访问。
<?php
use Kerekit\ClassPropertyManagement\AnnotatedPropertiesTrait;
use Kerekit\ClassPropertyManagement\Annotation\{Readable,Writable};
class Entry
{
use AnnotatedPropertiesTrait;
/** @Readable */
private $id = 1;
/** @Readable @Writable */
private $date = '2021-03-15';
/** @Readable @Writable */
private $text = '';
}
$entry = new Entry;
// Access Readable properties
$entry->id === 1;
var_dump (isset ($entry->id));
// Set Writable properties
$entry->date = '2021-03-16';
// Use chained set... methods for setting multiple Writable properties at once
$entry
->setDate ('2021-03-17')
->setText ('Some text here...')
;
// Unset Writable properties
unset ($entry->date, $entry->text);