htmlspecialchars()期望参数1为字符串,在laravel刀片中给出的数组

我正在执行审核,比较old_values和new_values字段。所做的所有修改都以TEXT格式存储在(old_values和new_values)列中。我有一个问题想要显示已修改并与我的审计表的new_values列相对应的字段。这是我循环遍历old_values列的方式,没有任何问题:

<td>
    <table class="table table-bordered table-hover" style="width:100%">
        @foreach($audit->old_values as $attribute => $value)         
          <tr>
             <td><b>{{ $attribute  }}</b></td>                                         
             <td>{{  $value }}</td>                                                                      
          </tr>                                  
         @endforeach
     </table>
</td>

所以我将相同的内容应用于new_values列,并且无法访问修改:

<td>
    <table class="table table-bordered table-hover" style="width:100%">
        @foreach($audit->new_values as $attributee => $value)         
          <tr>
             <td><b>{{ $attributee }}</b></td>                                         
             <td>{{  $value }}</td>                                                                      
          </tr>                                  
         @endforeach
     </table>
</td>

这是错误:

htmlspecialchars()期望参数1为字符串,给定数组

所以我尝试了以下操作:1)用dd检查($ audit-> new_values) 结果:

array:4 [▼
  "category_id" => "2"
  "title" => "Mi cuarto post edit"
  "excerpt" => "Extracto de mi cuarto post edit"
  "body" => "<p>Contenido de mi cuarto post edit</p>"
]

2)然后使用array_get结果进行探测:

  <td>{{ ($value, 'value.category_id'. default) }} </td>    

new_values

这是我的审核表:我想显示以红色突出显示的行的数据(new_values):

tabla audit

有人可以帮我解决这个问题吗?如何正确循环遍历阵列?

评论