Having 3 multidimensional arrays, to whom I do a foreach how can I limit the multidimensional response inside foreach from X items to lets say 20.
Code:
$i = 0;
foreach ($value->channel->item as $item)
{
$data['data'][$keySection]['item1'][$i]['url'] = $item->url;
$data['data'][$keySection]['item1'][$i]['title'] = $item->title;
$data['data'][$keySection]['item1'][$i]['img'] = $item->thumb;
$i++;
}
where $value is contained within
foreach ($homeData as $keySection => $valueSection)
{
foreach($valueSection as $key => $value)
{
switch ($key)
{
I’ve tried aplying some fors both within foreach ($value->channel->item as $item) as outside but I just can’t get it to work properly, I get either doubled results or not working at all.
How can I make this work??
Edit:
$i has nothing to do with it… I need to limit $value->channel->item where item contains X results
Edit2:
$i is for $homeData where $homeData contains three values and each and one of those will later contain 3 different values of $value->channel->item so if item contains 20 results, will be 3×20 = 60 and $i is ment to separate each 20 results…
Edit3:
ok, now I get it… sorry for the misunderstanding
After you start the foreach, add:
This checks if $i is greater than 19 (which means 20 iterations) and then breaks this foreach loop. More information about break, here.