在Laravel

时间:2018-01-22 15:46:06

标签: php mysql json laravel

我有一个项目。目前,我正在使用简历(简历)表。所以,我的每个简历都可以包含一个或多个电话号码和电子邮件。

因为我已经有大约7个表与技能,语言等简历相关联,所以我决定在Сv中保存电子邮件和电话 s列,作为JSON列。

所以,在我的迁移中,我把

$table->json('phone');
$table->json('email');

我怎么能操纵这个

<input type="text" name="phone[]"> 
 <input type="text" name="email[]">

用于在Controller中存储来自Controller的数据,以及如何在视图中检索它们?

1 个答案:

答案 0 :(得分:1)

使用属性转换。在这种情况下,您不需要将数据从数组转换为JSON并返回。

来自the docs

  

在处理存储为序列化JSON的列时,数组强制转换类型特别有用。例如,如果您的数据库具有包含序列化JSON的JSON或TEXT字段类型,则在您的Eloquent模型上访问该属性时,将该属性添加到该属性将自动将该属性反序列化为PHP数组

protected $casts = [
    'phone' => 'array',
    'email' => 'array',
];