DataSet

实现 DumpableInterface, ArrayAccess, Countable, Iterator

DataSet 是一个集合类,允许开发者像操作典型的 PHP 数组一样操作一组 DataObject。

1.0

Joomla 框架

方法

__call

魔法调用方法用于使用迭代器调用对象方法。

__call( method, mixed||string|int arguments = []) : mixed||string|int

示例:$array = $objectList->foo('bar');

对象列表将遍历其对象,并查看每个对象是否具有可调用的 'foo' 方法。如果是,它将传递参数列表并组装任何返回值。如果对象没有可调用的方法,则不记录任何返回值。对象的键和结果数组将被维护。

1.0

参数

方法

string调用的方法名称。

参数

array<string|int, mixed>调用的方法的参数。

响应

array<string|int, mixed>数据集中的对象上调用的方法返回的值数组。

__construct

类构造函数。

__construct(\Joomla\Data\DataObject||string|int objects = []) : 

1.0

抛出

InvalidArgumentException如果对象不是 DataObject。

参数

对象

array<string|int, DataObject>要绑定到数据集的 DataObject 对象数组。

响应

混合

__get

魔法 get 方法用于从数据集中的对象获取属性列表。

__get( property) : mixed||string|int

示例:$array = $dataSet->foo;

这将返回所有对象中 'foo' 属性值的列(或由单个 DataObject 中的自定义属性设置器确定的值)。结果数组将包含列表中每个对象的条目(与 __call 相比,__call 可能不会包含)。对象的键和结果数组将被维护。

1.0

参数

属性

string数据属性的名称。

响应

array<string|int, mixed>值的关联数组。

__isset

魔法 isset 方法用于使用迭代器检查对象属性的状态。

__isset( property) : 

示例:$array = isset($objectList->foo);

1.0

参数

属性

string属性的名称。

响应

bool如果属性在数据集中的任何对象中设置,则为真。

__set

魔法 set 方法用于使用迭代器设置对象属性。

__set( property,  value) : 

示例:$objectList->foo = 'bar';

这将为所有对象中的 'foo' 属性设置 'bar'(或由 DataObject 中的自定义属性设置器确定的值)。

1.0

参数

属性

string属性的名称。

mixed要赋予数据属性的值。

响应

空值

__unset

魔法 unset 方法用于使用迭代器取消设置对象属性。

__unset( property) : 

示例:unset($objectList->foo);

这将取消设置 DataObject 列表中的所有 'foo' 属性。

1.0

参数

属性

string属性的名称。

响应

空值

clear

清除数据集中的对象。

clear() : \Joomla\Data\DataSet

1.0

响应

DataSet返回自身以允许链式操作。

count

获取集合中数据对象的个数。

count() : 

1.0

响应

int对象的个数。

current

获取集合中的当前数据对象。

current() : \Joomla\Data\DataObject|false

1.0

响应

DataObject|false当前对象,或如果数组为空或指针超出元素末尾,则为 false。

dump

转储集合中的数据对象,如果合适,则递归转储。

dump( depth = 3, \SplObjectStorage dumped = null) : mixed||string|int
参见 DataObject::dump()

1.0

参数

深度

int递归的最大深度(默认 = 3)。例如,深度为 0 将返回一个 stdClass,其中包含所有以原生形式存在的属性。深度为 1 将只递归到属性的第一层。

转储

SplObjectStorage|null一个已序列化对象的数组,用于避免无限循环。

响应

array<string|int, mixed>一个关联数组,包含集合中的数据对象,转储为一个简单的 PHP stdClass 对象。

getObjectsKeys

获取对象中存在的键数组

getObjectsKeys( type = 'all') : mixed||string|int

1.2.0

抛出

InvalidArgumentException

参数

类型

string选择类型 'all' 或 'common'

响应

array<string|int, mixed>键数组

初始化

使用对象数组初始化列表。

initialise(mixed||string|int input = []) : 

1.0

抛出

InvalidArgumentException如果对象不是 DataObject。

参数

输入

array<string|int, mixed>对象数组。

响应

空值

jsonSerialize

获取可以序列化为 JSON 格式的数据集。

jsonSerialize() : mixed||string|int

注意,此方法不会返回关联数组,否则它将被编码为对象。JSON 解码器不一致地维护关联键的顺序,而它们确实维护数组的顺序。

1.0

响应

array<string|int, mixed>

key

获取迭代器中当前对象的键。

key() : int|false

1.0

响应

int|false成功时的对象键;失败时为 false。

keys

获取迭代器中所有对象的键数组(模拟 array_keys)。

keys() : mixed||string|int

1.0

响应

array<string|int, mixed>键数组

next

将迭代器前进到迭代器中的下一个对象。

next() : 

1.0

响应

空值

offsetExists

检查迭代器中是否存在偏移量。

offsetExists( offset) : 

1.0

参数

偏移量

mixed对象偏移量。

响应

布尔值

offsetGet

获取迭代器中的偏移量。

offsetGet( offset) : \Joomla\Data\DataObject|null

1.0

参数

偏移量

mixed对象偏移量。

响应

DataObject|null

offsetSet

设置迭代器中的偏移量。

offsetSet( offset, \Joomla\Data\DataObject object) : 

1.0

抛出

InvalidArgumentException如果对象不是 DataObject 的实例。

参数

偏移量

mixed对象偏移量。

对象

DataObject对象对象。

响应

空值

offsetUnset

取消设置迭代器中的偏移量。

offsetUnset( offset) : 

1.0

参数

偏移量

mixed对象偏移量。

响应

空值

rewind

将迭代器倒回到第一个对象。

rewind() : 

1.0

响应

空值

toArray

将所有对象作为数组获取

toArray( associative = true,  keys) : mixed||string|int

1.2.0

参数

关联

bool设置返回模式的选项:关联数组或数字数组。

keys

string从对象中提取的无限可选属性名称。

响应

array<string|int, mixed>根据定义的选项返回数组。

valid

验证迭代器。

valid() : 

1.0

响应

布尔值

walk

将函数应用于集合中的每个对象(模拟 array_walk)。

walk(
Warning: Array to string conversion in /opt/phpdoc/vendor/twig/twig/src/Extension/CoreExtension.php on line 768
|Array funcname) : 

1.2.0

抛出

InvalidArgumentException

参数

函数名

callable回调函数。

响应

布尔值

属性

current

迭代器的当前位置。

1.0

类型

int

对象

迭代器对象。

1.0

类型

array<string|int, DataObject>