关于判断循环 Laravel 5 php

 @foreach($pages as $page)
                @if (count($page->nav_id) === 2)
                    <li><a href="/pages/{{ $page->id }}">{{ $page->title }}</a></li>
                @endif
@endforeach

数据库的 内容 是

图片描述

分 2中导航

现在是在视图里面做判断

当 nav_id = 2 的时候循环出来

这样做好像循环不出来 哪里写错了吗

阅读 4k
3 个回答

int count ( mixed $var [, int $mode = COUNT_NORMAL ] )
count — 计算数组中的单元数目或对象中的属性个数

而你$page->nav_id本身就是一个值了,所以count($page->nav_id) 永远等于1,所以需要把count()去掉
直接$page->nav_id === 2 就可以判断了~~

把条件改为

($page->nav_id) === 2

楼上正解,count 是计算个数,而你的count($page->nav_id) 无关是如何计算,数值都是1, 1不等于2,所以循环不出

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题