PHP.mk документација

RecursiveArrayIterator::hasChildren

Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.

recursivearrayiterator.haschildren.php PHP.net прокси Преводот се освежува
Оригинал на PHP.net
Патека recursivearrayiterator.haschildren.php Локална патека за оваа страница.
Извор php.net/manual/en Оригиналниот HTML се реупотребува и локално се стилизира.
Режим Прокси + превод во позадина Кодовите, табелите и белешките остануваат читливи во истиот тек.
RecursiveArrayIterator::hasChildren

Референца за `recursivearrayiterator.haschildren.php` со подобрена типографија и навигација.

recursivearrayiterator.haschildren.php

RecursiveArrayIterator::hasChildren

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

RecursiveArrayIterator::hasChildrenReturns whether current entry is an array or an object

= NULL

public RecursiveArrayIterator::hasChildren(): bool

Returns whether current entry is an array или object for which an iterator can be obtained via RecursiveArrayIterator::getChildren().

Параметри

Оваа функција нема параметри.

Вратени вредности

Патеката до PHP скриптата што треба да се провери. true if the current entry is an array или object, инаку false се враќа.

Примери

Пример #1 RecursiveArrayIterator::hasChildren() example

<?php
$fruits
= array("a" => "lemon", "b" => "orange", array("a" => "apple", "p" => "pear"));

$iterator = new RecursiveArrayIterator($fruits);

while (
$iterator->valid()) {

// Check if there are children
if ($iterator->hasChildren()) {
// print all children
foreach ($iterator->getChildren() as $key => $value) {
echo
$key . ' : ' . $value . "\n";
}
} else {
echo
"No children.\n";
}

$iterator->next();
}
?>

Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред

No children.
No children.
a : apple
p : pear

Види Исто така

Белешки од корисници 1 белешка

Доминик
пред 11 години
hasChildren() works as documented here, but not as its name suggests. 

The method does not return whether the current entry actually *has* children. It only returns whether the element's type is one that is able to have children.

This is a bit counterintuitive if you are processing empty arrays.

Example:

<?php
$data = array(
    "element one" => array(true),
    "element two" => array(),
    "element three" => array(true),
);

$i = new RecursiveIteratorIterator(new RecursiveArrayIterator($data),RecursiveIteratorIterator::SELF_FIRST);

foreach($i as $key => $value)
{
    $type = gettype($value);
    $depth = $i->getDepth();

    if($i->hasChildren()) {
        echo "$depth: $key ($type) has children\n";
    } else {
        echo "$depth: $key ($type) has no children\n";
    }
}
?>

Result:

0: element one (array) has children
1: 0 (boolean) has no children
0: element two (array) has children
0: element three (array) has children
1: 0 (boolean) has no children
Навигација

Прелистувај сродни теми и функции.

На оваа страница

Автоматски outline од активната документација.

Насловите ќе се појават тука по вчитување.

Попрегледно читање

Примерите, changelog табелите и user notes се визуелно издвоени за да не се губат во долгата содржина.

Брз совет Користи го outline-от Скокни директно на главните секции од активната страница.
Извор Оригиналниот линк останува достапен Кога ти треба целосен upstream context, отвори го PHP.net во нов tab.