【问题标题】:How to show the curly braces values in blade如何在刀片中显示花括号值
【发布时间】:2019-10-29 10:09:17
【问题描述】:

Laravel 刀片视图在花括号中获取值,如

{"id":4,"patient_id":2,"findings":"Thiese 是 调查结果","imp":"这些是 展示次数","attach":"NA","created_at":"2019-06-14 15:49:37","updated_at":"2019-06-14 15:49:37"}

我的问题是如何在刀片中显示这些值?

我试过下面的代码

 @foreach($report as $rrp)
        <p>{{ $rrp['cnic'] }}</p>
 @endforeach

上面的代码什么也没显示。我也试过了

@foreach($report as $rrp)
        <p>{{ $rrp->cnic }}</p>
@endforeach

不适合我。

【问题讨论】:

  • @Abar Ahmad 试试$rrp['id']
  • 我在输入中看不到 cnic 键。你确定你想得到正确的东西吗?你如何定义$report数组?
  • @Haru 我也试过这个。

    {{ $rrp['id'] }}

    id 键出现在数组中但仍未显示。
  • @JigneshJoisar 尝试但没有收获
  • 我怀疑,您并没有真正迭代报告,而是单个报告。如果您只打印{{ $rrp }}(您正在迭代单个报告的属性),您会得到什么?

标签: laravel laravel-blade


【解决方案1】:

您应该为您的问题添加更多代码。您正在获取什么数据,来自数据库、来自请求或其他什么的数据?

如果您的数据来自数据库并将其保存到 $reports 变量中,假设您有以下列:

id | patient_id | findings  |   imp    |    attach    |  created_at | updated_at
1  | 2          | some data |some data |  some data   |  some data  | some data 

如果你想在刀片中显示你的文本,你可以这样做:

foreach($reports as $report){
    <p> {{ $report->id }} </p>
    <p> {{ $report->patient_id }} </p>
    <p> {{ $report->findings }} </p>
    //and so on for every column that you want to display
@endforeach

【讨论】:

  • 不是我想要的。
  • 对于这种情况,您不需要 @foreach() 循环,因为只有 1 个报告被返回(通过 $report),但除此之外,$report-&gt;{property} 是访问属性的正确语法在那个变量上。
【解决方案2】:

这是我从@Haru 评论中得到的。

{} 中的数据不是数组。所以,我们可以像这样显示数据 &lt;p&gt;ID :{{ $report['id'] }}&lt;/p&gt;

例如:变量不是 $reports 它只是 $report。

【讨论】:

  • 如果$report 变量是Report 模型实例,它应该可以通过任一 $report-&gt;id$report["id"] 访问; Laravel 模型就是这样方便。
【解决方案3】:

您似乎正在对单个报告进行迭代。

如果$report 包含{"id":4,"patient_id":2,"findings":"Thiese are the findings","imp":"These are the impressions","attach":"NA","created_at":"2019-06-14 15:49:37","updated_at":"2019-06-14 15:49:37"},您的循环@foreach($report as $rrp) 将迭代属性(idpatient_idfindings 等)。

在你的情况下,答案是:

@foreach($report as $rrp)
    <p>{{ $rrp }}</p>
@endforeach

但是,如果这是一个包含类似条目的数组,那么您的循环应该反映现有的键。在这个例子中,没有像cnic 这样的键。

也许你想做的是:

@foreach($report as $rrp)
    <p>{{ $rrp['id'] }}</p>
    <!-- alternatively, if that was an object {{ $rrp->id }} -->
@endforeach

【讨论】:

  • 你是对的。这是一个单一的报告。但它不会显示在循环中。我们可以将其显示为

    In p:{{ $report['id'] }}

  • 对,单个报表不是对象而是数组。
猜你喜欢
  • 2016-01-05
  • 2019-11-14
  • 2015-06-19
  • 2017-02-13
  • 2019-01-27
  • 2018-04-19
  • 1970-01-01
  • 2015-04-14
  • 2018-09-22
相关资源
最近更新 更多