如何在视图文件laravel 5.4中使用行数和打印值?

时间:2019-05-16 05:41:06

标签: php laravel laravel-5.4

app / http / controller / FirstController.php

public function delhi_property()
{
    $sql = DB::table('property')->where('city', 'Delhi')->orWhere('city', 'New Delhi')->get();
    return view('index',['results'=>$sql]);
}

resources / views / index.blade.php

<h3>({{ $results->count() }}) Properties</h3>

routes / web.php

Route::get('/','FirstController@delhi_property');

我是laravel 5.4的新手,在这里,我只是在运行我在Controller中提到的查询,并想在视图文件中打印行数,但是当我检查它显示错误时即

Undefined variable: result (View: D:\xampp\htdocs\real_estate\resources\views\index.blade.php)

那么我该如何解决这个问题?请帮助我。

6 个答案:

答案 0 :(得分:0)

您将以“结果”形式返回查询结果,因此在视图中,您需要以“ $结果”形式访问它。 错误中显示未定义的变量结果。 里面没有“ s”。 因此,请参考错误返回的代码行,并检查变量命名是否正确。

答案 1 :(得分:0)

例如,对查询中的所有行进行计数是一种功能:

count($results);

答案 2 :(得分:0)

在控制器中:

public function delhi_property()
{
    $data = DB::table('property')->where('city', 'Delhi')->orWhere('city', 'New Delhi')->get();
    return view('index', compact('data'));
}

在刀片文件中:

<h3>( {{ $data->count() }} ) Properties</h3>

OR

<h3>( {{  count($data) }} ) Properties</h3>

答案 3 :(得分:0)

I am modifying your query a bit, will achieve the same result efficiently
    public function delhi_property()
    {
        $cityResults = DB::table('property')->whereIn('city', ['Delhi','New Delhi'])->get();
        return view('index',compact('cityResults'));
    }

您认为您可以按以下方式访问计数:

<h3>{{ $cityResults->count() }} Properties</h3>

答案 4 :(得分:0)

如果您使用它来计算和显示 Bootstrap 徽章的总数,请直接在侧边栏视图中尝试以下操作:

<span class="badge badge-info right">{{ DB::table('property')->where('city', 'Delhi')->orWhere('city', 'New Delhi')->count() }}</span>

答案 5 :(得分:-1)

您可以使用larave的默认功能对行进行计数,如下例所示。

public function delhi_property()
{
    $result = DB::table('property')->where('city', 'Delhi')->orWhere('city', 'New Delhi')->get();
    $total_result = count($result);
    return view('index',compact(['result','total_result']));
}

在视图中,您可以打印$ result变量中的行数。