我想从json文件中获取数据,以便填充postgres空间数据库。
在json文件中,日期数据存储在:" dt_txt":" 2016-05-21 03:00:00",我要存储2016-05 -21在日期。
$json_d=file_get_contents('file.json);
$data=json_decode($json_d,TRUE);
$date=$data['list'][0]['dt_txt'];
$dbconn = new PDO("pgsql:host=localhost; port=5432; dbname=DB", "postgres", "0000");
$insertmbr = $dbconn->prepare("INSERT INTO weather(date) VALUES(?)");
$insertmbr->execute(array($date));
当我运行代码时出现此错误
致命错误:在非对象
上调用成员函数format()
答案 0 :(得分:1)
您需要先将其转换为时间戳
$date = strtotime($data['list'][0]['dt_txt']);
然后您可以使用date
方法根据需要对其进行格式化:
$date = date('Y-m-d', $date);
您还可以使用相同的命令提取时间:
$time = date('H:i:s', $date);
或者,您也可以使用explode
:
list($date, $time) = explode(' ', $date, 2);