我发了一篇关于Adobe Analytics API代码的帖子。我正在使用代码来检索第一个和第二个元素(维度),这个元素被称为'细分'。数量取决于我们对此元素的数据。
我正在使用i = 10的循环,但我想要把所有东西都拿走。哪种方法最好?
我正在使用此代码:
foreach ($json->report->data as $element)
{
// putting an excessive number for i
for ($i=0;$i<100;$i++)
{
// checking if the object exists
if (isset($element->breakdown[0]->breakdown[$i]->name))
{
echo $element->breakdown[0]->breakdown[$i]->name;
// putting the data in a list I created before
array_push($list, array(''.$element->year.'-'.$element->month.'-'.$element->day, $element->breakdown[0]->name, $element->breakdown[0]->breakdown[$i]->name, $element->breakdown[0]->breakdown[$i]->counts[0], $element->breakdown[0]->breakdown[$i]->counts[1]));
}
else
{
// Break the loop. All the objects are in the row. So, if there is not any for i=45 then there won't be any for i>45
continue;
}
}
}
我试图获取所有对象。我正在检查对象是否存在。如果他们不这样做,我希望这个循环停止(第二次循环)。
答案 0 :(得分:3)
使用break
代替continue
退出循环
break
停止当前循环continue
进入循环的下一次迭代。
要退出两个循环,请使用break 2;
答案 1 :(得分:1)
你可以打破循环。 有关更多信息:http://php.net/manual/en/control-structures.break.php
foreach ($json->report->data as $element)
{
// putting an excessive number for i
for ($i=0;$i<100;$i++)
{
// checking if the object exists
if (isset($element->breakdown[0]->breakdown[$i]->name))
{
echo $element->breakdown[0]->breakdown[$i]->name;
// putting the data in a list I created before
array_push($list, array(''.$element->year.'-'.$element->month.'-'.$element->day, $element->breakdown[0]->name, $element->breakdown[0]->breakdown[$i]->name, $element->breakdown[0]->breakdown[$i]->counts[0], $element->breakdown[0]->breakdown[$i]->counts[1]));
}
else
{
// Break the loop.
break;
}
}
}