SplHeap::key()函数用于返回当前元素的键(即索引)。
使用方法:
public SplHeap::key ( void ) : mixed
示例:
// 创建一个新的SplMaxHeap对象
$heap = new SplMaxHeap();
// 向堆中插入元素
$heap->insert('apple', 5);
$heap->insert('banana', 3);
$heap->insert('cherry', 8);
$heap->insert('date', 1);
// 获取堆中当前元素的键
while ($heap->valid()) {
echo "Key: " . $heap->key() . "\n";
$heap->next();
}
// 输出结果:
// Key: 2
// Key: 1
// Key: 0
// Key: 3
在上面的示例中,我们创建了一个SplMaxHeap对象,并向堆中插入了一些元素。然后,我们使用SplHeap::key()函数获取了堆中当前元素的键(索引)。在循环中,我们使用SplHeap::valid()函数来检查堆中是否还有下一个元素,并使用SplHeap::next()函数将指针移动到下一个元素。最后,我们输出了每个元素的键。在这个例子中,键的顺序是根据元素的优先级来决定的。