kore / data-object
数据对象的简单基类。
1.3
2019-09-27 09:41 UTC
Requires (Dev)
- pdepend/pdepend: @stable
- phpmd/phpmd: @stable
- phpunit/phpunit: @stable
- sebastian/phpcpd: @stable
- squizlabs/php_codesniffer: @stable
README
此存储库仅包含PHP数据对象的简单基类。
此类在尝试读取或写入未知属性时会抛出异常,并确保克隆操作是递归进行的。
使用方法
要使用此数据对象基类为自己的数据对象,可以使用类似以下的方法
class Person extends \Kore\DataObject\DataObject { public $prename; public $forename; }
如果您现在访问未知属性,将会抛出异常。关于这一动机的更多细节,请阅读:http://qafoo.com/blog/016_struct_classes_in_php.html
在某些情况下,在构造时可能需要传递额外的属性,并且这些属性被有意忽略,不会添加到DataObject中。因此,增加了一个构造函数参数 $ignoreAdditionalAttributes
,默认设置为 false
,但在极少数需要时可以设置为 true
。这允许创建一个数组类型的DataObject,其中的额外值将被忽略,并且在构造期间不会抛出异常。但如果后来尝试访问一个不存在的属性,将会抛出异常!