Как проверить смещение в цикле - PullRequest
0 голосов
/ 12 декабря 2011

Как я могу проверить смещение в торт php в цикле? У меня есть сообщение, говорящее это ...

Notice (8): Undefined offset:  1 [APP\views\cars\car_details.ctp, line 53]

Notice (8): Undefined offset:  2 [APP\views\cars\car_details.ctp, line 53]

Он находится в цикле foreach и извлекает такие элементы, как этот

$car_ratings['CarRating'][$j]['reccar_num']

Ответы [ 2 ]

1 голос
/ 12 декабря 2011

Проверьте размер массива (используя count()), затем не просматривайте его.

Например:

for ($i = 0; $i < count($car_ratings['CarRating']); ++$i) {
    // use the array at $i
}

В качестве альтернативы, если вы не хотите изменять цикл, вы можете использовать array_key_exists(), чтобы определить, имеет ли массив значение, определенное для определенного ключа.

Конечно, лучше использовать foreach.

Если бы вы могли предоставить больше контекста, этот ответ мог бы быть лучше.

1 голос
/ 12 декабря 2011

Просто запустите проверку array_key_exists () для элемента вроде:

if(array_key_exists($j, $car_ratings['CarRating'])){
  // true
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...