Упрощение проверки PHP ключей многомерного массива

0

Как я могу упростить этот код, который проверяет многомерные массивы перед доступом к одному из его значений?

<?php
function some_function($a) {
  if (isset($a) &&
    isset($a['container']) &&
    isset($a['container']['level1']) &&
    isset($a['container']['level1']['item1']) {
    print $a['container']['level1']['item1'];
  }
}
?>

Есть ли более простой или лучший способ проверить, существуют ли ключи?

Теги:
arrays
multidimensional-array

2 ответа

4
Лучший ответ

Просто выполните один isset($a['container']['level']['item1']). Он проверит все ключи в порядке и залог, если они не существуют. Нет необходимости проверять свой путь "вниз" на дерево.

  • 0
    Спасибо, что работает отлично, без каких-либо ошибок уведомления.
1

Вы можете просто проверить самое внутреннее значение:

<?php
function some_function($a) {
  if (isset($a) &&
    isset($a['container']['level1']['item1']) {
    print $a['container']['level1']['item1'];
  }
}
?>

Ещё вопросы

Сообщество Overcoder
Наверх
Меню