函式名稱:ParentIterator::hasChildren()
適用版本:PHP 5, PHP 7
函式描述:ParentIterator::hasChildren() 方法用於檢查當前迭代器位置的父級元素是否有子元素。
用法示例:
// 建立一個陣列迭代器
$array = [
'fruit' => ['apple', 'banana', 'orange'],
'vegetable' => ['carrot', 'lettuce', 'tomato']
];
$iterator = new RecursiveArrayIterator($array);
// 建立一個父級迭代器
$parentIterator = new ParentIterator($iterator);
// 檢查父級元素是否有子元素
while ($parentIterator->valid()) {
if ($parentIterator->hasChildren()) {
echo $parentIterator->key() . " has children\n";
} else {
echo $parentIterator->key() . " does not have children\n";
}
$parentIterator->next();
}
輸出結果:
fruit has children
vegetable has children
在示例中,我們首先建立了一個包含水果和蔬菜的多維陣列。然後,我們使用RecursiveArrayIterator將陣列轉換為可迭代物件。接下來,我們建立了一個ParentIterator物件,並將之前建立的迭代器作為引數傳遞給它。然後,我們使用while迴圈遍歷ParentIterator物件,並使用hasChildren()方法檢查父級元素是否有子元素。如果有子元素,則輸出父級元素的鍵名,表示該元素有子元素;如果沒有子元素,則輸出父級元素的鍵名,表示該元素沒有子元素。