84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
continue和break的区别我是知道的。那continue num 和 break num的区别是什么呢?
学习是最好的投资!
break是结束整个循环体,continue是结束单次循环break num是结束外层第num层整个循环体,continue num 是结束外层第num层单次循环
<?php foreach($arr1 as $value1) { foreach($value1 as $value2) { if($value2 == 0) { continue; //继续下次循环,在里层的foreach里面,默认为1 continue 2;//继续下次循环,在外层的foreach里面 break; 则同理 } } }
break是跳出循环,而continue是开始执行下一次循环。那么对于加了数字的break和continue是用来标识层层循环嵌套。当遇上一个循环中嵌套多个循环,这时候的未加数字的break和continue,代表的都是包含break(等于break 1)和continue(等于continue 1)最里面的一层循环的循环结构要么开始最里面一层循环的下一层循环要么终止最里面的一层循环,而continue 2和 break 2则是代表包含这个continue 2和 break 2得最里面倒数第二层循环,以此类推:
<?php$data = array(
array( 'seller_id' => '商家1', 'product_id' => '001' ), array( 'seller_id' => '商家1', 'product_id' => '002' ), array( 'seller_id' => '商家1', 'product_id' => '003' ), array( 'seller_id' => '商家2', 'product_id' => '001' ), array( 'seller_id' => '商家3', 'product_id' => '001' ), array( 'seller_id' => '商家3', 'product_id' => '002' ), array( 'seller_id' => '商家3', 'product_id' => '003' ), );
$result = array();foreach($data as $key => $value) {
foreach($value as $k => $val) { if($val == '商家1') { continue 2; } var_dump($val);die;// continue 2 执行最外层的下一层循环,所以下面不会有输出,此处输出“商家2” } var_dump($value);die;
}
break是结束整个循环体,continue是结束单次循环
break num是结束外层第num层整个循环体,continue num 是结束外层第num层单次循环
break是跳出循环,而continue是开始执行下一次循环。那么对于加了数字的break和continue是用来标识层层循环嵌套。当遇上一个循环中嵌套多个循环,这时候的未加数字的break和continue,代表的都是包含break(等于break 1)和continue(等于continue 1)最里面的一层循环的循环结构要么开始最里面一层循环的下一层循环要么终止最里面的一层循环,而continue 2和 break 2则是代表包含这个continue 2和 break 2得最里面倒数第二层循环,以此类推:
<?php
$data = array(
$result = array();
foreach($data as $key => $value) {
}