这保存的是不同行的内容,不能直接保存。
创新互联是一家专业提供石屏企业网站建设,专注与成都做网站、网站制作、H5网站设计、小程序制作等业务。10年已为石屏众多企业、政府机构等服务。创新互联专业网站制作公司优惠进行中。
要做成行的形式保存。
$data=array(); //创建临时变量用以存储数据
$length=count($你的array名['cwidth']); //数你有多少行数据
for($i=0; $i=$length; $i++){ //循环
$data[$i]['cwidth']=$你的array名['cwidth'];
$data[$i]['cheight']=$你的array名['cheight'];
}
出来的数据就像是这样:
array(2){
[0]=array(2){
['cwidth']=string(5) "593px"
['cheight']=string(5) "203px"
}
[1]=array(2){
['cwidth']=string(5) "598px"
['cheight']=string(5) "111px"
}
}
然后再用$db-add($data);插入数据
利用PHP对数组赋值时下标变量会自动递增的特点,可以很方便用循环将数据存入一个数组。例如:$arr[] = 'a'; 这条语句会将字符a存入数组变量$arr中,如果$arr不存在则会新建一个;若已存在,则将$arr数组的下标变量递增1后存入字符。也就是说,如果已有$arr[0]='a', 那么执行 $arr[] = 'b'; 后,数组其实是进行了$arr[1] = 'b' 的操作。
可以按照 ly4885806 的方法 序列化成字符串插入数据库,不过这个只能插入一个字段不循环
如果你的数据是需要插入多个行和字段的话只能循环了
$Array = Array ( [0] = Array ( [0] = 张三 [1] = 70 ) [1] = Array ( [0] = 李四 [1] = 80 ) [2] = Array ( [0] = 王五 [1] = 90 )
?
$in_value_arr = array();
foreach($Array as $key=$value){
foreach($value as $k=$v){
$in_value_arr[]="(**,**,**)";
}
$in_value = '('.implode('),(', $in_value_arr).')';
$sql = "INSERT INTO tbl_name (col1,col2) VALUES{$in_value};";
}
?
json_encode后就是字符串了。
所以不需要什么特别处理,直接入库就可以。
只不过出库后需要json_decode。
你的问题是,出库后没有对json_encode的字段进行json_decode处理。
例如
$result = array('a'='jsonencode后的字符串');
print_r(json_decode($result['a']));
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款