#php #foreach
#php #foreach
Вопрос:
foreach ($data['data'] as $data) {
echo $data['title'][0];
//echo '<br />';
}
это выведет:
melon
apple
...
banana
pear
Теперь, как перейти ко всем, получить только последнее значение в foreach? нужно только pear
. Спасибо.
Комментарии:
1. Не используйте
foreach
вообще. Используйте$data['data'][last index]
Ответ №1:
Если вам нужно только последнее значение, то вам не нужно выполнять цикл. Вы можете использовать end()
:
$lastItem = end($data['data']);
echo $lastItem['title'][0];
Обратите внимание, что при этом внутренний указатель массива будет установлен на последний элемент. Может потребоваться, чтобы вы вызвали reset($data)
после этого.
Ответ №2:
End уже был предложен (что я могу порекомендовать на самом деле), однако, если вы хотите сделать это с помощью foreach, вы могли бы сделать:
foreach ($data['data'] as $data) {
}
echo $data['title'][0];
//echo '<br />';
но это действительно лишнее. Затем вы выполняете итерацию по массиву только для сохранения последнего элемента в $data
. Итак, если в ‘data’ вообще нет элементов, это приведет к сбою (как с end, но end вернет false, если массив пуст).
Итак, переходим к:
$data=end($data['data']);