Php 如何在单字段laravel中存储多个值

Php 如何在单字段laravel中存储多个值,php,json,angular,laravel,Php,Json,Angular,Laravel,我正在使用这些简单的表单,希望一次保存多个数据,这是怎么可能的 控制器 $status= new PostTable(); $status->language = $request->language; 刀片 <input type="checkbox" value="hindi" name="language[]" id="language"> Hindi mysql数据库中不允许存储数组 因此,您可以将其转换为json,并执行此操作 $status->

我正在使用这些简单的表单,希望一次保存多个数据,这是怎么可能的

控制器

  $status= new PostTable();
  $status->language = $request->language;
刀片

<input type="checkbox" value="hindi" name="language[]" id="language"> Hindi

mysql数据库中不允许存储数组

因此,您可以将其转换为json,并执行此操作

$status->language = json_encode($request->language);


下面是您需要如何在控制器中执行此操作

$status= new PostTable();
$language[] = $request->language
$status->language = json_encode($language);

请更改您的代码,因为您选择了多种语言,所以请使用
内爆
函数

 $status->language = $request->language;
改变

 $status->language = implode(',', $request->language);

在from$request->language中有一个数组。在php中,您提供了一个函数infrade()。php中的infrade函数用于“用字符串连接数组的元素”。因此,请尝试以下操作

$status->language = implode(',', $request->language); //in which how you want separte your array is the first param 
它将用逗号分隔多个数据。有关详细信息:

使用函数

$status->language = serialize($request->language);
您可以稍后取消序列化以使用

unserialize($request->language)

对多个值尝试此方法:

 $user = User::find(auth()->user()->id);
 $categoriesString = implode(",", $request->get('categories'));
 $user->categories = $categoriesString;
 $user->save();
对于多个图像:

$medical_record = [];
$image = $request->file('file_name');
if ($image) {
    foreach ($image as $files) {
        $destinationPath = storage_path('medical-records/');
        $profileImage = date('YmdHis') . uniqid() . $files->getClientOriginalExtension();
        $files->move($destinationPath, $profileImage);
        $medical_record[] ="$profileImage";         
    }
    $data['file_name'] = implode(",", $medical_record);
}

您可以插入逗号分隔的值或json编码的数据'language'=>json_encode($language),我已经尝试过这样做,但没有成功。!amit我想重新保存数据,怎么做?只需获取值并使用json_解码即可。像json_decode($language)哦,是的,但我现在正在使用
controller$status=PostTable::where('id',$id)->get();返回视图('post.profile',compact('status')
unserialize($request->language)
 $user = User::find(auth()->user()->id);
 $categoriesString = implode(",", $request->get('categories'));
 $user->categories = $categoriesString;
 $user->save();
$medical_record = [];
$image = $request->file('file_name');
if ($image) {
    foreach ($image as $files) {
        $destinationPath = storage_path('medical-records/');
        $profileImage = date('YmdHis') . uniqid() . $files->getClientOriginalExtension();
        $files->move($destinationPath, $profileImage);
        $medical_record[] ="$profileImage";         
    }
    $data['file_name'] = implode(",", $medical_record);
}