我希望在双列数据库数据json_data
和json_data
中插入,我无法在数据库中获取插入值$data_end = json_decode('[
{
"woid": "2254271",
"json_data": [
{
"code": "23",
"date": "Tue, 03 Jan 2017 03:30 PM IRST",
"temp": "68",
"text": "Breezy"
}
]
},
{
"woid": "2254271",
"json_data": [
{
"code": "23",
"date": "Tue, 03 Jan 2017 03:30 PM IRST",
"temp": "68",
"text": "Breezy"
}
]
}
]');
foreach($data_end as $idx=>$val){
$this->admin_model->UpdateData('weather', array('json_data' => $val->json_data), array('woid' => $val->woid));
}
,这是怎么回事?
weather
并告诉我这个错误:
遇到PHP错误
严重性:通知
消息:数组到 字符串转换
文件名:database / DB_driver.php
行 编号:1524
错误号码:1054
未知栏目 '字段列表'中的'数组'
更新json_data
SETwoid
=数组 WHEREv
='2254271'
文件名:models / model.php
Line 编号:39
答案 0 :(得分:1)
您正在尝试解析查询中的数组。
你可以在插入之前对数组进行json_encode。
$this->admin_model->UpdateData('weather', array('json_data' => json_encode($val->json_data)), array('woid' => $val->woid));
答案 1 :(得分:0)
$val->json_data
是一个数组,在插入数据库之前,必须将其更改为json_encode( $val->json_data)
字符串。
答案 2 :(得分:0)
它不起作用,因为你试图在MySQl查询中使用PHP Array(),它不允许你需要使用json_encode()
方法来保存数据。
你可以像那样更新 -
$json_data = json_encode($val->json_data);
$this->admin_model->UpdateData('weather', array('json_data' => $json_data), array('woid' => $val->woid));