手册
目录
收藏842
分享
阅读2649
更新时间2025-08-06
Iterable 是指任何可以使用 foreach() 循环遍历的值。
Iterable 伪类型在 PHP 7.1 中引入,它可以作为函数参数和函数返回值的数据类型。
iterable 关键字可以用作函数参数的数据类型或函数的返回类型:
使用 iterable 函数参数:
运行实例 »
点击 "运行实例" 按钮查看在线实例
返回 iterable:
运行实例 »
点击 "运行实例" 按钮查看在线实例
所有数组都是 iterable,因此任何数组都可以用作需要 iterable 的函数的参数。
任何实现了 Iterator 接口的对象都可以用作需要 iterable 的函数的参数。
迭代器包含一个项目列表,并提供方法来循环遍历它们。它保持一个指向列表中某个元素的指针。列表中的每个项目都应该有一个可用于查找项目的键。
迭代器必须具有这些方法:
current() - 返回指针当前指向的元素。它可以是任何数据类型key() 返回与列表中当前元素关联的键。它只能是整数、浮点数、布尔值或字符串next() 将指针移动到列表中的下一个元素rewind() 将指针移动到列表中的第一个元素valid() 如果内部指针没有指向任何元素(例如,如果在列表末尾调用了 next()),则应返回 false。在任何其他情况下,它都返回 true实现 Iterator 接口并将其用作 iterable:
items = array_values($items);
}
public function current() {
return $this->items[$this->pointer];
}
public function key() {
return $this->pointer;
}
public function next() {
$this->pointer++;
}
public function rewind() {
$this->pointer = 0;
}
public function valid() {
// count() 指示列表中有多少项
return $this->pointer < count($this->items);
}
}
// 一个使用 iterable 的函数
function printIterable(iterable $myIterable) {
foreach($myIterable as $item) {
echo $item;
}
}
// 将迭代器用作 iterable
$iterator = new MyIterator(["a", "b", "c"]);
printIterable($iterator);
?>
运行实例 »点击 "运行实例" 按钮查看在线实例
相关
视频
RELATED VIDEOS
科技资讯
1
2
3
4
5
6
7
8
9
精选课程
共5课时
17.2万人学习
共49课时
77万人学习
共29课时
61.7万人学习
共25课时
39.3万人学习
共43课时
70.9万人学习
共25课时
61.6万人学习
共22课时
23万人学习
共28课时
33.9万人学习
共89课时
125万人学习