PHP 8.5.8 Released!

ArrayObject::setIteratorClass

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

ArrayObject::setIteratorClassSets the iterator classname for the ArrayObject

说明

public function ArrayObject::setIteratorClass(string $iteratorClass): void

Sets the classname of the array iterator that is used by ArrayObject::getIterator().

参数

iteratorClass

The classname of the array iterator to use when iterating over this object.

返回值

没有返回值。

示例

示例 #1 ArrayObject::setIteratorClass() example

<?php
// Custom ArrayIterator (inherits from ArrayIterator)
class MyArrayIterator extends ArrayIterator {
 // custom implementation
}
// Array of available fruits
$fruits = array("lemons" => 1, "oranges" => 4, "bananas" => 5, "apples" => 10);
$fruitsArrayObject = new ArrayObject($fruits);
// Set the iterator classname to the newly
$fruitsArrayObject->setIteratorClass('MyArrayIterator');
var_dump($fruitsArrayObject->getIterator());
?>

以上示例会输出:

object(MyArrayIterator)#2 (1) {
 ["storage":"ArrayIterator":private]=>
 object(ArrayObject)#1 (1) {
 ["storage":"ArrayObject":private]=>
 array(4) {
 ["lemons"]=>
 int(1)
 ["oranges"]=>
 int(4)
 ["bananas"]=>
 int(5)
 ["apples"]=>
 int(10)
 }
 }
}

发现了问题?

了解如何改进此页面提交拉取请求报告一个错误
+添加备注

用户贡献的备注

此页面尚无用户贡献的备注。

AltStyle によって変換されたページ (->オリジナル) /