在Laravel中的视图中声明简单变量

时间:2013-07-07 06:47:23

标签: variables laravel laravel-4

这可能是一件简单的事情,但我不知道如何在Laravel的视图中声明和增加整数变量。

我正在使用几个foreach循环:

@foreach($fans as $fan)
    @foreach ($array as $x)
         @if($fan->fbid==$x)

         @endif
    @endforeach
  @endforeach

我想抛出一个整数变量$ a,它计算它通过if语句的次数。像:

$a=0;
@foreach($fans as $fan)
        @foreach ($array as $x)
             @if($fan->fbid==$x)
             $a++;                  
             @endif
        @endforeach
  @endforeach

{{$a}}

在Laravel的视图中执行此操作的正确语法是什么?谢谢。

7 个答案:

答案 0 :(得分:33)

刀锋{{ }}将回应你正在做的事情。

你应该这样做:

<?php $a = 0; ?>
@foreach($fans as $fan)
        @foreach ($array as $x)
             @if ($fan->fbid == $x)
                 <?php $a++; ?>                  
             @endif
        @endforeach
@endforeach

{{$a}}

答案 1 :(得分:13)

Laravel 5.2及以上

@php ($a = 0)

@foreach($fans as $fan)
        @foreach ($array as $x)
             @if($fan->fbid==$x)
              @php ($a++)                 
             @endif
        @endforeach
  @endforeach

{{$a}}

或在Block

@php
$a = 0
@endphp

答案 2 :(得分:9)

这就是它如何与我合作

@php($a++)

如果是长代码

@php
     enter your codes here
@endphp

或者您可以使用

<?php a++ ?>

答案 3 :(得分:2)

您有两种方法来解决您的问题:

  1. 在刀片模板文件中使用传统的PHP标记<?php?>。通过将.blade.php符号替换为{{}}<?php ?>文件将编译到传统的php文件中。因此,您可以随意将此文件编辑为普通的PHP文件。
  2. 扩展刀片语法,以更优雅的方式编写代码this answer。但是,主要IDE仍然不支持刀片引擎,因此如果您使用此解决方案,您将在IDE中遇到自动完成和代码提示的难度。

答案 4 :(得分:1)

更好的方法可能是:

@for ($i=0; $i<=count($fans); $i++)
  @if($fans[$i]->fbid==$i)
    Fan Count: {{ $i}}
  @endif
@endfor

答案 5 :(得分:1)

你应该像@Patrick Reck所提到的那样使用它

<?php $a = 0; ?>
@foreach($fans as $fan)
        @foreach ($array as $x)
             @if ($fan->fbid == $x)
                 <?php $a++; ?>                  
             @endif
        @endforeach
@endforeach

{{$a}}

正如@Moode Osman为Laravel 5.2及以上所述

@php($a = 0)

@foreach($fans as $fan)
        @foreach ($array as $x)
             @if ($fan->fbid == $x)
                 @php ($a++)                  
             @endif
        @endforeach
@endforeach

{{$a}}

答案 6 :(得分:0)

您可以在刀片模板中执行此操作

{{--*/ $a = 0 or whatever here /*--}}