как получить только последнее значение в foreach?PHP - PullRequest
2 голосов
/ 04 июня 2011
foreach ($data['data'] as $data) { 
 echo $data['title'][0]; 
 //echo '<br />';
}

это распечатает:

melon
apple
... 
banana
pear

Теперь, как перейти все, только получить последнее значение в foreach? нужно всего лишь pear. Спасибо.

Ответы [ 2 ]

8 голосов
/ 04 июня 2011

Если вам нужно только последнее значение, то вам не нужно зацикливаться.Вы можете использовать end():

$lastItem = end($data['data']);
echo $lastItem['title'][0];

Обратите внимание, что это установит указатель внутреннего массива на последний элемент.Возможно, вам потребуется позвонить reset($data) впоследствии.

1 голос
/ 04 июня 2011

Конец уже был предложен (что я могу рекомендовать на самом деле), однако, если вы хотите сделать это с помощью foreach, вы можете сделать:

foreach ($data['data'] as $data) {
}
echo $data['title'][0]; 
//echo '<br />';

, но это действительно излишне.Вы перебираете массив только тогда, чтобы сохранить последний элемент в $data.Поэтому, если в 'data' вообще нет элементов, это завершится ошибкой (как в случае с end, но end вернет false, если массив пуст).

Так что:

$data=end($data['data']);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...