从MongoDB文档Laravel中捕获未定义的索引

时间:2016-12-01 13:08:46

标签: php mongodb laravel

大家好!我的MongoDB集合中的文档可能有所不同。有些人有一个名为Additional_Information的额外嵌入式文档。我希望网络浏览器在Additional_Information可用时显示信息表,并在未找到时忽略它!这应该是最简单的if语句,但我不能让它工作。我试过这段代码:

@if (is_array($document['Additional_Information']))
      <li><a data-toggle="tab" href="#busco">Additional Information</a></li>
@endif

确实显示Additional Information标签。但是当它不是时,它会抛出Undefined index: Additional_Information!有人知道如何在不存在文件和捕获之间进行区分吗?

2 个答案:

答案 0 :(得分:2)

改为使用empty()

@if (!empty($document['Additional_Information']))
      <li><a data-toggle="tab" href="#busco">Additional Information</a></li>
@endif

根据文件:

  

如果变量不存在,则不会生成警告。这意味着empty()基本上是!isset($ var)||的简洁等价物$ var == false。

答案 1 :(得分:0)

您还需要使用 array_key_exists 来检查数据 $ document

中是否存在 Additional_Information