If statement foreach中的Laravel If-Else语句

If statement foreach中的Laravel If-Else语句,if-statement,foreach,domdocument,laravel-blade,If Statement,Foreach,Domdocument,Laravel Blade,我试图在foreach循环中使用if/else语句。 使用DomDocument,我试图找到描述标签和描述标签的内部 这个很好用。当有描述标记时,它将显示描述标记内的内容。如果没有说明标签,则显示:未找到说明未找到说明未找到说明未找到说明。为什么它会显示错误四次?我该如何解决这个问题 我正在使用DomDocument和Laravel 5.4 元标记: $meta = $dom->getElementsByTagName('meta'); 我的代码: @foreach ($meta as

我试图在foreach循环中使用if/else语句。 使用DomDocument,我试图找到描述标签和描述标签的内部

这个很好用。当有描述标记时,它将显示描述标记内的内容。如果没有说明标签,则显示:
未找到说明未找到说明未找到说明未找到说明
。为什么它会显示错误四次?我该如何解决这个问题

我正在使用DomDocument和Laravel 5.4

元标记:

$meta = $dom->getElementsByTagName('meta');
我的代码:

@foreach ($meta as $node)
  @if($node->getAttribute('name')=='description') 
    {{$node->getAttribute('content'), PHP_EOL}}
      @else 
       {{'No description found'}}
  @endif
@endforeach
根据Muthu17进行编辑:

我几乎写了和你一样的代码。但唯一的问题是:它始终显示“未找到描述”。即使找到了描述标记,也会显示描述标记init和“未找到描述”

我已经声明
$showErrorMessage=0在我的控制器中

@foreach ($meta as $node)
 @if($node->getAttribute('name')=='description') 
  {{$node->getAttribute('content'), PHP_EOL}}
   @else
    {!! $showErrorMessage == 1; !!}
   @endif
@endforeach

@if($showErrorMessage = 1)
 {{'No description found'}}
@endif

希望你看起来像这样

<?php $showErrorMessage = 0; ?>
@foreach ($meta as $node)
  @if($node->getAttribute('name')=='description') 
    {{$node->getAttribute('content'), PHP_EOL}}
      @else 
       <?php $showErrorMessage = 1;?>
  @endif
@endforeach

@if($showErrorMessage == 0)
 {{'No description found'}}
@endif

@foreach($meta作为$node)
@如果($node->getAttribute('name')=='description')
{{$node->getAttribute('content'),PHP_EOL}
@否则
@恩迪夫
@endforeach
@如果($showErrorMessage==0)
{{未找到描述'}}
@恩迪夫

{{$node}}给出了什么?您的循环包含3个项目,而这三个项目没有说明,因此您将收到“未找到说明”消息3times@pseudoanime谢谢你的邀请。我已经更新了我的帖子@muthu17我想是这样的,但是我如何解决这个问题呢?在为每个创建一个varaibale之前,例如:淋浴RorMessage=0,在其他内部,只需将值更改为1[淋浴RorMessage=0],在每个结束后,检查淋浴RorMessage状态并打印消息我已经用我的更改更新了我的帖子。你能看一下吗?你不应该给{!!$BREARRORMESSAGE==1;!!},它应该是{!!$BREARRORMESSAGE=1;!!}不应该给==为变量赋值,你应该只在检查条件时使用==并将@if($BREARRORMESSAGE=1)改为@if($BREARRORMESSAGE==1)