牛牛在线工具

SplHeap::valid()

收录 8868 个 PHP 函数,含用途说明与用法示例。

SplHeap::valid()

检查堆的迭代器是否仍然有效

函数名称:SplHeap::valid() 适用版本:PHP 5 >= 5.3.0, PHP 7 函数描述:检查堆的迭代器是否仍然有效 用法: bool SplHeap::valid ( void ) 说明: SplHeap::valid() 函数用于检查SplHeap对象的迭代器是否仍然有效。如果迭代器仍然有效,该函数将返回 true,否则返回 false。 示例: class MyHeap extends SplHeap { public function compare($value1, $value2) { return $value1 - $value2; } } $heap = new MyHeap(); $heap->insert(5); $heap->insert(10); $heap->insert(3); $heap->rewind(); while ($heap->valid()) { echo $heap->current() . " "; $heap->next(); } 输出: 3 5 10 在上面的示例中,我们创建了一个自定义的堆类MyHeap,重写了compare()方法来定义堆的排序规则。然后我们向堆中插入了三个元素。接下来,我们使用rewind()方法将迭代器指针移动到堆的起始位置,并使用valid()方法来检查迭代器的有效性。在循环中,我们使用current()方法输出当前元素,并使用next()方法将迭代器指针向前移动。最终,我们得到了按照升序排列的堆元素输出。