PHP空数组的遍历问题

$ss=2;$max=10;$arr=array();echo$max."以内的素数为:";while($ss<$max):$boo=false;foreach($arr... $ss = 2;
$max = 10;
$arr = array();
echo $max."以内的素数为: ";
while ($ss < $max):
$boo = false;
foreach ($arr as $value)://我不明白这里的数组的$value值是什么,这不是空数组吗?为什么可以遍历出来。
if ($ss % $value == 0):
$boo = true;
break;
endif;
endforeach;
if (!$boo):
echo $ss." ";
$arr[count($arr)] = $ss;
endif;
$ss++;
endwhile;
展开
 我来答
zhaoh23
推荐于2016-03-13 · 超过23用户采纳过TA的回答
知道答主
回答量:51
采纳率:0%
帮助的人:39.6万
展开全部
foreach 会根据数组元素个数进行循环,$value是每次循环所访问的数组元素,个数为0的时候就不进入循环,

这种情况相当于
for($i=0; $i<count($arr); $i++){
echo $arr[$i]; // foreach 的 $value 与此等效

}
,当$arr是空数组时循环不进入
追问
那么是不是说,当这段代码首次运行的时候, 这些代码 foreach ($arr as $value
if ($ss % $value == 0):
$boo = true;
break;
endif;
endforeach;
是直接跳过去不运行,然后运行下面的代码吗?
追答
是的,在while的第一次循环中,foreach部分跳过
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式