繁体   English   中英

Laravel-如何将数组保存到数据库

[英]Laravel - How to save an Array to Database

我有一个像这样的数组:

array:4 [▼
  "*name1*" => 1
  "*name2*" => 1
  "*name3*" => 2
  "*name4*" => 1
]

我有一个带有'id'; 'name'; 'time'的表 'id'; 'name'; 'time' 'id'; 'name'; 'time'

然后如何使用Laravel将此数组保存到Item Table中?

我已经这样做了,但是我知道它不起作用。 但是我不知道怎么保存

foreach ($data_participant[$i]['attributes']['stats']['itemGrants'] as $key => $value) {
      $itemGrants = new ItemGrant;
      $itemGrants->item = $key;
      $itemGrants->time = $value;

      $itemGrants->save();
}

只需使用json_encode函数从array转换为JSON字符串即可。 您可以参考此链接以获取更多信息。

例如,将数组转换为JSON字符串格式:

$array = ["name"=>1,"name2"=>2,"name3"=>3];
$json_array = json_encode($array);

现在,输出将是JSON字符串:

[{"name":"1"},{"name2":"2"},{"name":"3"}];

您可以将其作为JSON格式的字符串保存到数据库中。

如果要将数据放回数组中,则必须解码。 例如:

$string_json = "[{"name":"1"},{"name2":"2"},{"name":"3"}]";    
$array_output = json_decode($string_json,true);

请注意传递给json_decodetrue布尔参数,这很重要,因为如果没有json_decode它将返回stdObject数组而不是关联数组。

现在,您可以取回数组作为输入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM