Laravel 5:以正确的方式使用implode()和Eloquent

时间:2017-04-14 23:14:48

标签: php laravel laravel-5 eloquent

我有一个checkbox组,希望将它们作为val(1,2,3)插入我的数据库。

这是我的刀片

<div class="form-group">
     @foreach($extra as $ext)
        <div class="checkbox">
           <label>
          {{ Form::checkbox('extra_services[]', $ext->id, null, ['class' => 'checkbox']) }}
          {!! $ext->title !!}
           </label>
        </div>
     @endforeach
</div>

这是控制器

    $temp->currency = $request->currency;
    $temp->implode($request->extra_services, ',');
    $temp->save();

我得到了

  

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

将我的复选框值插入我的数据库中的正确方法是什么(1,2,3)?

2 个答案:

答案 0 :(得分:1)

您需要将$temp->implode($request->extra_services, ',');更改为$temp->extra_services = implode(',',$request->extra_services);

答案 1 :(得分:1)

我假设您要将值分配给$temp->extra_services。那么代码应该是

$temp->extra_services = collect($request->extra_services)->implode(',');