htmlentities()期望参数1是字符串,json_decode中给出的对象

时间:2015-04-27 06:42:56

标签: php json laravel

在我的laravel项目中,我在数据库和文件名中有列。 我在json中保存多个大小的文件但是当我尝试解码这个json时我得到了这个错误

  

htmlentities()期望参数1为字符串,给定对象

  @foreach($models as $model)
    <tr>
        <td class="tac">
            {!! Html::link(route('admin.files.edit', $model->id), $model->id) !!}
        </td>


        <td><img src="{{ json_decode($model->files) }}" /> </td>
        <td class="column-time">
            {!! Helpers::jDate($model) !!}
        </td>

    <td class="column-time">
            {!! Helpers::jDate($model) !!}
        </td>
    </tr>
@endforeach

控制器文件

$models = $this->files->findAll();
return view("admin.files.index", compact("models"));
杰森:

{"large":"/uploads/2015/04/81515adaaf9c747b_large.jpg","main":"/uploads/2015/04/81515adaaf9c747b_main.jpg","cover":"/uploads/2015/04/81515adaaf9c747b_cover.jpg","small":"/uploads/2015/04/81515adaaf9c747b_small.jpg","xsmall":"/uploads/2015/04/81515adaaf9c747b_xsmall.jpg"}

1 个答案:

答案 0 :(得分:1)

由于你的json拥有多张图片,你必须得到一张图片:

<img src="{{ json_decode($model->files)->large }}" />

注意我认为这只能在PHP 5.4之后直接进行,但由于这是Laravel的要求,所以你应该没有问题。