Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 正在将数组保存到db,但已序列化为字符串_Php_Mysql_Laravel - Fatal编程技术网

Php 正在将数组保存到db,但已序列化为字符串

Php 正在将数组保存到db,但已序列化为字符串,php,mysql,laravel,Php,Mysql,Laravel,我正在将一个数组保存到数据库中,但是当我保存数组时,数组从开始到结束都会被引用 e、 g 保存时不应在数组的开始和结束处引用该数组,但这种情况正在发生。当我在shipping字段中检查我的模型时,它是一个数组,我试图对其进行修剪,但它说不能,因为它说它是一个数组,所以问题是当它被保存到该字段的db中时 数组在保存时应该是这样的 [{"id":"1","country":"New Zealand","shipping_rate":"1"},{"id":"2","country":"Australi

我正在将一个数组保存到数据库中,但是当我保存数组时,数组从开始到结束都会被引用

e、 g

保存时不应在数组的开始和结束处引用该数组,但这种情况正在发生。当我在shipping字段中检查我的模型时,它是一个数组,我试图对其进行修剪,但它说不能,因为它说它是一个数组,所以问题是当它被保存到该字段的db中时

数组在保存时应该是这样的

[{"id":"1","country":"New Zealand","shipping_rate":"1"},{"id":"2","country":"Australia","shipping_rate":"2"}]

mysql不保存数组,它保存字符串。保存数组时,按设计将数组序列化为字符串

如果您使用的是MySql 5.7.8或更高版本,则可以使用JSON数据类型


mysql不保存数组,它保存字符串。保存数组时,按设计将数组序列化为字符串

如果您使用的是MySql 5.7.8或更高版本,则可以使用JSON数据类型


您不能直接在mysql中保存数组,它会引发异常,您应该将其转换为字符串
(使用json_encode())
并将其保存在mysql中的varachar/text type字段中。
同样,当您从db获取数据时,将其转换为数组
(使用json_decode())
,然后使用它

您不能直接在mysql中保存数组,它将引发异常,您应该将其转换为字符串
(使用json_encode())
,并将其保存在mysql中的varachar/text type字段中。
同样,当您从db获取数据时,将其转换为数组
(使用json_decode())
,然后使用它

u必须将json字符串转换为数组:

<?php
$json_string= '[{"id":"1","country":"New Zealand","shipping_rate":"1"},{"id":"2","country":"Australia","shipping_rate":"2"}]';
$array = json_decode($json_string,true);
?>

然后使用foreach进行循环,并在foreach中输入查询:

<?php
foreach($array as $data){
  $id = $data['id'];
  $country = $data['country'];
  $save= mysql_query("insert into your_database values("$id", "$country")";
 }
?>

u必须将json字符串转换为数组:

<?php
$json_string= '[{"id":"1","country":"New Zealand","shipping_rate":"1"},{"id":"2","country":"Australia","shipping_rate":"2"}]';
$array = json_decode($json_string,true);
?>

然后使用foreach进行循环,并在foreach中输入查询:

<?php
foreach($array as $data){
  $id = $data['id'];
  $country = $data['country'];
  $save= mysql_query("insert into your_database values("$id", "$country")";
 }
?>