文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

PHP中如何使用foreach()跳出本次或当前循环与终止循环

2024-04-02 19:55

关注

这篇文章主要介绍PHP中如何使用foreach()跳出本次或当前循环与终止循环,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

  PHPforeach()跳出本次或当前循环与终止循环方法

  PHP中用foreach()循环中,想要在循环的时候,当满足某个条件时,想

  复制代码

  $arr=array('a','b','c','d','e');

  $html='';

  foreach($arras$key=>$value){

  if($value=='b'){

  $html.=$value;

  continue;//当$value为b时,跳出本次循环

  }

  if($value=='c'){

  $html.=$value;

  break;//当$value为c时,终止循环

  }

  $html.=$value;

  }

  echo$html;//输出:ab

  复制代码

  下面是自己的实际例子

  //父级栏目

  publicfunctionparentList($id)

  {

  //查询该栏目下所有子类数据

  $categoryData=db("category")->where("id=".$id)->find();

  //dump($categoryData);

  if(!$categoryData){

  $this->error("参数错误");

  }else{

  $this->assign('categoryData',$categoryData);

  //查询该栏目下所有子类数据即pid=$id

  $category=db("category")->select();

  $praProductData=$this->toLayer($category);

  //dump($praProductData);

  foreach($praProductDataas$k=>$v){

  //如果有子类目

  if(!empty($v['zilei'])&&$v['id']==$id){

  $praductData=Db::table("ven_article")

  ->alias('a')

  ->join('ven_categoryw','a.cid=w.id')

  ->where("a.status=1andw.pid='".$id."'")

  ->field("a.id,a.title,a.faceimg,a.time_report,a.resume,a.cid,w.name")

  ->order('a.idDESC')

  ->paginate(6);

  //dump($praductData);

  break;

  }else{

  //没有子类

  if($v['id']==$id){

  $praductData=Db::table("ven_article")

  ->alias('a')

  ->join('ven_categoryw','a.cid=w.id')

  ->where("a.status=1anda.cid=".$id)

  ->field("a.id,a.title,a.faceimg,a.time_report,a.resume,a.cid,w.name")

  ->order('a.idDESC')

  ->paginate(6);

  //dump($praductData);

  break;

  }

  }

  }

  $data=$praductData->toArray()['data'];//或者$data=$praductDatas->all();

  if($data){

  $this->assign('a',1);

  }

  $page=$praductData->render();

  $this->assign('Page',$page);

  $this->assign("newPraProduct",$praductData);

  }

  returnview("ParentList");

  }

  打印$praProductData结果如下:

  array(5){

  [0]=>array(9){

  ["id"]=>int(1)

  ["pid"]=>int(0)

  ["path"]=>string(3)"0-1"

  ["name"]=>string(9)"风幕柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(0)""

  ["seo_keys"]=>string(0)""

  ["seo_desc"]=>string(0)""

  ["zilei"]=>array(2){

  [0]=>array(9){

  ["id"]=>int(2)

  ["pid"]=>int(1)

  ["path"]=>string(5)"0-1-2"

  ["name"]=>string(21)"饮料超市风幕柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(0)""

  ["seo_keys"]=>string(21)"饮料超市风幕柜"

  ["seo_desc"]=>string(21)"饮料超市风幕柜"

  ["zilei"]=>array(0){

  }

  }

  [1]=>array(9){

  ["id"]=>int(37)

  ["pid"]=>int(1)

  ["path"]=>string(6)"0-1-37"

  ["name"]=>string(15)"超市风幕柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(0)""

  ["seo_keys"]=>string(15)"超市风幕柜"

  ["seo_desc"]=>string(15)"超市风幕柜"

  ["zilei"]=>array(0){

  }

  }

  }

  }

  [1]=>array(9){

  ["id"]=>int(33)

  ["pid"]=>int(0)

  ["path"]=>string(4)"0-33"

  ["name"]=>string(15)"环岛风幕柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(15)"环岛风幕柜"

  ["seo_keys"]=>string(15)"环岛风幕柜"

  ["seo_desc"]=>string(15)"环岛风幕柜"

  ["zilei"]=>array(0){

  }

  }

  [2]=>array(9){

  ["id"]=>int(46)

  ["pid"]=>int(0)

  ["path"]=>string(4)"0-46"

  ["name"]=>string(9)"点菜柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(9)"点菜柜"

  ["seo_keys"]=>string(9)"点菜柜"

  ["seo_desc"]=>string(9)"点菜柜"

  ["zilei"]=>array(0){

  }

  }

  [3]=>array(9){

  ["id"]=>int(48)

  ["pid"]=>int(0)

  ["path"]=>string(4)"0-48"

  ["name"]=>string(9)"鲜花柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(9)"鲜花柜"

  ["seo_keys"]=>string(9)"鲜花柜"

  ["seo_desc"]=>string(9)"鲜花柜"

  ["zilei"]=>array(0){

  }

  }

  [4]=>array(9){

  ["id"]=>int(53)

  ["pid"]=>int(0)

  ["path"]=>string(4)"0-53"

  ["name"]=>string(9)"药品柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(0)""

  ["seo_keys"]=>string(0)""

  ["seo_desc"]=>string(0)""

  ["zilei"]=>array(2){

  [0]=>array(9){

  ["id"]=>int(54)

  ["pid"]=>int(53)

  ["path"]=>string(7)"0-53-54"

  ["name"]=>string(15)"药品阴凉柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(0)""

  ["seo_keys"]=>string(0)""

  ["seo_desc"]=>string(0)""

  ["zilei"]=>array(0){

  }

  }

  [1]=>array(9){

  ["id"]=>int(55)

  ["pid"]=>int(53)

  ["path"]=>string(7)"0-53-55"

  ["name"]=>string(15)"药品冷藏柜"

  ["status"]=>int(1)

  ["seo_title"]=>string(0)""

  ["seo_keys"]=>string(0)""

  ["seo_desc"]=>string(0)""

  ["zilei"]=>array(0){

  }

  }

  }

  }

  }

  要跳出本次循环继续执行下次循环,或者满足某个条件的时候,终止foreach()循环,分别会用到:continue与break。

以上是“PHP中如何使用foreach()跳出本次或当前循环与终止循环”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注编程网行业资讯频道!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯