У меня есть массив, отражающий структуру сайта. Я пытаюсь выполнить оператор if, основанный на уровне, на котором я нахожусь:
Выполнение простого теста:
<?php if ($dirTree[0]){echo "level1";}?>
<?php if ($dirTree[1]){echo "level2";}?>
Проверяет правильность и возвращает уровень, но поскольку $ $ dirTree [0] присутствует в $ dirTree [1], проверяются оба уровня.
Есть ли все равно, чтобы запустить оператор if только для активного уровня точки вывода?
Содержание $ dirTree на уровне 2 (эфф. Уровень 1 и уровень 2):
Array
(
[0] => CategoryItem Object
(
[id] => 200139
[isCategory] => 1
[conceptID] => 200139
[preferred] => 1
[obsolete] =>
[type] =>
[addedInVersion] => 0.05
[lastUpdatedInVersion] => 0.05
[AToZ] =>
[name] => Council tax
[scopeNotes] =>
[historyNotes] => Added in 0.05
[broaderItems] => Array
(
)
[narrowerItems] => Array
(
[0] => ReferenceItem Object
(
[id] => 200180
[default] => 1
[type] => BROADERITEM
)
[1] => ReferenceItem Object
(
[id] => 200181
[default] => 1
[type] => BROADERITEM
)
[2] => ReferenceItem Object
(
[id] => 200182
[default] => 1
[type] => BROADERITEM
)
[3] => ReferenceItem Object
(
[id] => 200248
[default] => 1
[type] => BROADERITEM
)
[4] => ReferenceItem Object
(
[id] => 200249
[default] => 1
[type] => BROADERITEM
)
[5] => ReferenceItem Object
(
[id] => 200250
[default] => 1
[type] => BROADERITEM
)
[6] => ReferenceItem Object
(
[id] => 200251
[default] => 1
[type] => BROADERITEM
)
)
[relatedItems] => Array
(
)
[useItem] => -1
[shortcut] =>
)
[1] => CategoryItem Object
(
[id] => 200181
[isCategory] => 1
[conceptID] => 200139
[preferred] => 1
[obsolete] =>
[type] =>
[addedInVersion] => 0.05
[lastUpdatedInVersion] => 0.05
[AToZ] =>
[name] => Money off your bill
[scopeNotes] =>
[historyNotes] => Added in 0.05
[broaderItems] => Array
(
[0] => ReferenceItem Object
(
[id] => 200139
[default] => 1
[type] => BROADERITEM
)
)
[narrowerItems] => Array
(
)
[relatedItems] => Array
(
)
[useItem] => -1
[shortcut] =>
)
)
Поскольку последний элемент массива всегда является активным уровнем, активный уровень должен быть таким же, как размер массива:
$active = count($dirTree);