php+msql 数据组合并保存到数据库中
来源:互联网 发布:top域名是哪个国家的 编辑:程序博客网 时间:2024/06/11 14:36
本次是以数据接口实现。接口数据如json数据$html
目标:将一个小时中的数据合为一条
1.数据库
<?phpnamespace Home\Controller;use Home\Controller\CommonController;class KeyController extends CommonController{ public $model_name = "Key"; public $model_user = "apiuser"; /* * 执行实时数据 */ public function index(){ //测试数据 $html = '[{ "ID":0,"inputdate":"2017-9-8 0:00:00","setid":"SL001","key":"风速","value":"0.8m/s"},{ "ID":0,"inputdate":"2017-9-8 0:00:00","setid":"SL001","key":"风向","value":"93"},{ "ID":0,"inputdate":"2017-9-8 0:00:00","setid":"SL001","key":"气压","value":"821.2hpa"},{ "ID":0,"inputdate":"2017-9-8 0:00:00","setid":"SL001","key":"湿度","value":"89%"},{ "ID":0,"inputdate":"2017-9-8 0:00:00","setid":"SL001","key":"太阳辐射","value":"0w/m2"},{ "ID":0,"inputdate":"2017-9-8 0:00:00","setid":"SL001","key":"温度","value":"18.8℃"},{ "ID":0,"inputdate":"2017-9-8 0:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 1:00:00","setid":"SL001","key":"风速","value":"0.7m/s"},{ "ID":0,"inputdate":"2017-9-8 1:00:00","setid":"SL001","key":"风向","value":"138"},{ "ID":0,"inputdate":"2017-9-8 1:00:00","setid":"SL001","key":"气压","value":"820.8hpa"},{ "ID":0,"inputdate":"2017-9-8 1:00:00","setid":"SL001","key":"湿度","value":"92%"},{ "ID":0,"inputdate":"2017-9-8 1:00:00","setid":"SL001","key":"太阳辐射","value":"0w/m2"},{ "ID":0,"inputdate":"2017-9-8 1:00:00","setid":"SL001","key":"温度","value":"18.4℃"},{ "ID":0,"inputdate":"2017-9-8 1:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 2:00:00","setid":"SL001","key":"风速","value":"1.2m/s"},{ "ID":0,"inputdate":"2017-9-8 2:00:00","setid":"SL001","key":"风向","value":"116"},{ "ID":0,"inputdate":"2017-9-8 2:00:00","setid":"SL001","key":"气压","value":"820.5hpa"},{ "ID":0,"inputdate":"2017-9-8 2:00:00","setid":"SL001","key":"湿度","value":"93%"},{ "ID":0,"inputdate":"2017-9-8 2:00:00","setid":"SL001","key":"太阳辐射","value":"0w/m2"},{ "ID":0,"inputdate":"2017-9-8 2:00:00","setid":"SL001","key":"温度","value":"18.2℃"},{ "ID":0,"inputdate":"2017-9-8 2:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 3:00:00","setid":"SL001","key":"风速","value":"0.3m/s"},{ "ID":0,"inputdate":"2017-9-8 3:00:00","setid":"SL001","key":"风向","value":"85"},{ "ID":0,"inputdate":"2017-9-8 3:00:00","setid":"SL001","key":"气压","value":"820hpa"},{ "ID":0,"inputdate":"2017-9-8 3:00:00","setid":"SL001","key":"湿度","value":"94%"},{ "ID":0,"inputdate":"2017-9-8 3:00:00","setid":"SL001","key":"太阳辐射","value":"0w/m2"},{ "ID":0,"inputdate":"2017-9-8 3:00:00","setid":"SL001","key":"温度","value":"18.2℃"},{ "ID":0,"inputdate":"2017-9-8 3:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 4:00:00","setid":"SL001","key":"风速","value":"0.7m/s"},{ "ID":0,"inputdate":"2017-9-8 4:00:00","setid":"SL001","key":"风向","value":"192"},{ "ID":0,"inputdate":"2017-9-8 4:00:00","setid":"SL001","key":"气压","value":"820hpa"},{ "ID":0,"inputdate":"2017-9-8 4:00:00","setid":"SL001","key":"湿度","value":"94%"},{ "ID":0,"inputdate":"2017-9-8 4:00:00","setid":"SL001","key":"太阳辐射","value":"0w/m2"},{ "ID":0,"inputdate":"2017-9-8 4:00:00","setid":"SL001","key":"温度","value":"18.4℃"},{ "ID":0,"inputdate":"2017-9-8 4:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 5:00:00","setid":"SL001","key":"风速","value":"0.4m/s"},{ "ID":0,"inputdate":"2017-9-8 5:00:00","setid":"SL001","key":"风向","value":"220"},{ "ID":0,"inputdate":"2017-9-8 5:00:00","setid":"SL001","key":"气压","value":"819.9hpa"},{ "ID":0,"inputdate":"2017-9-8 5:00:00","setid":"SL001","key":"湿度","value":"97%"},{ "ID":0,"inputdate":"2017-9-8 5:00:00","setid":"SL001","key":"太阳辐射","value":"0w/m2"},{ "ID":0,"inputdate":"2017-9-8 5:00:00","setid":"SL001","key":"温度","value":"18.1℃"},{ "ID":0,"inputdate":"2017-9-8 5:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 6:00:00","setid":"SL001","key":"风速","value":"0.5m/s"},{ "ID":0,"inputdate":"2017-9-8 6:00:00","setid":"SL001","key":"风向","value":"172"},{ "ID":0,"inputdate":"2017-9-8 6:00:00","setid":"SL001","key":"气压","value":"820.1hpa"},{ "ID":0,"inputdate":"2017-9-8 6:00:00","setid":"SL001","key":"湿度","value":"97%"},{ "ID":0,"inputdate":"2017-9-8 6:00:00","setid":"SL001","key":"太阳辐射","value":"0w/m2"},{ "ID":0,"inputdate":"2017-9-8 6:00:00","setid":"SL001","key":"温度","value":"18.1℃"},{ "ID":0,"inputdate":"2017-9-8 6:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 7:00:00","setid":"SL001","key":"风速","value":"0m/s"},{ "ID":0,"inputdate":"2017-9-8 7:00:00","setid":"SL001","key":"风向","value":"226"},{ "ID":0,"inputdate":"2017-9-8 7:00:00","setid":"SL001","key":"气压","value":"820.5hpa"},{ "ID":0,"inputdate":"2017-9-8 7:00:00","setid":"SL001","key":"湿度","value":"98%"},{ "ID":0,"inputdate":"2017-9-8 7:00:00","setid":"SL001","key":"太阳辐射","value":"1w/m2"},{ "ID":0,"inputdate":"2017-9-8 7:00:00","setid":"SL001","key":"温度","value":"18.2℃"},{ "ID":0,"inputdate":"2017-9-8 7:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 8:00:00","setid":"SL001","key":"风速","value":"0.5m/s"},{ "ID":0,"inputdate":"2017-9-8 8:00:00","setid":"SL001","key":"风向","value":"158"},{ "ID":0,"inputdate":"2017-9-8 8:00:00","setid":"SL001","key":"气压","value":"820.8hpa"},{ "ID":0,"inputdate":"2017-9-8 8:00:00","setid":"SL001","key":"湿度","value":"98%"},{ "ID":0,"inputdate":"2017-9-8 8:00:00","setid":"SL001","key":"太阳辐射","value":"70w/m2"},{ "ID":0,"inputdate":"2017-9-8 8:00:00","setid":"SL001","key":"温度","value":"18.5℃"},{ "ID":0,"inputdate":"2017-9-8 8:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 8:00:00","setid":"","key":"负离子","value":"20860.00个/Cm3"},{ "ID":0,"inputdate":"2017-9-8 8:55:00","setid":"","key":"负离子","value":"20860.00个/Cm3"},{ "ID":0,"inputdate":"2017-9-8 9:00:00","setid":"SL001","key":"风速","value":"0.6m/s"},{ "ID":0,"inputdate":"2017-9-8 9:00:00","setid":"SL001","key":"风向","value":"203"},{ "ID":0,"inputdate":"2017-9-8 9:00:00","setid":"SL001","key":"气压","value":"821hpa"},{ "ID":0,"inputdate":"2017-9-8 9:00:00","setid":"SL001","key":"湿度","value":"94%"},{ "ID":0,"inputdate":"2017-9-8 9:00:00","setid":"SL001","key":"太阳辐射","value":"152w/m2"},{ "ID":0,"inputdate":"2017-9-8 9:00:00","setid":"SL001","key":"温度","value":"19.8℃"},{ "ID":0,"inputdate":"2017-9-8 9:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 9:50:00","setid":"","key":"负离子","value":"18790.00个/Cm3"},{ "ID":0,"inputdate":"2017-9-8 10:00:00","setid":"SL001","key":"风速","value":"1.3m/s"},{ "ID":0,"inputdate":"2017-9-8 10:00:00","setid":"SL001","key":"风向","value":"200"},{ "ID":0,"inputdate":"2017-9-8 10:00:00","setid":"SL001","key":"气压","value":"821.5hpa"},{ "ID":0,"inputdate":"2017-9-8 10:00:00","setid":"SL001","key":"湿度","value":"88%"},{ "ID":0,"inputdate":"2017-9-8 10:00:00","setid":"SL001","key":"太阳辐射","value":"366w/m2"},{ "ID":0,"inputdate":"2017-9-8 10:00:00","setid":"SL001","key":"温度","value":"20.4℃"},{ "ID":0,"inputdate":"2017-9-8 10:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 10:45:00","setid":"","key":"负离子","value":"25970.00个/Cm3"},{ "ID":0,"inputdate":"2017-9-8 11:00:00","setid":"SL001","key":"风速","value":"2.1m/s"},{ "ID":0,"inputdate":"2017-9-8 11:00:00","setid":"SL001","key":"风向","value":"186"},{ "ID":0,"inputdate":"2017-9-8 11:00:00","setid":"SL001","key":"气压","value":"821.2hpa"},{ "ID":0,"inputdate":"2017-9-8 11:00:00","setid":"SL001","key":"湿度","value":"76%"},{ "ID":0,"inputdate":"2017-9-8 11:00:00","setid":"SL001","key":"太阳辐射","value":"826w/m2"},{ "ID":0,"inputdate":"2017-9-8 11:00:00","setid":"SL001","key":"温度","value":"23.5℃"},{ "ID":0,"inputdate":"2017-9-8 11:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 11:40:00","setid":"","key":"负离子","value":"3210.00个/Cm3"},{ "ID":0,"inputdate":"2017-9-8 12:00:00","setid":"SL001","key":"风速","value":"2.6m/s"},{ "ID":0,"inputdate":"2017-9-8 12:00:00","setid":"SL001","key":"风向","value":"214"},{ "ID":0,"inputdate":"2017-9-8 12:00:00","setid":"SL001","key":"气压","value":"820.5hpa"},{ "ID":0,"inputdate":"2017-9-8 12:00:00","setid":"SL001","key":"湿度","value":"66%"},{ "ID":0,"inputdate":"2017-9-8 12:00:00","setid":"SL001","key":"太阳辐射","value":"873w/m2"},{ "ID":0,"inputdate":"2017-9-8 12:00:00","setid":"SL001","key":"温度","value":"24℃"},{ "ID":0,"inputdate":"2017-9-8 12:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 12:35:00","setid":"","key":"负离子","value":"1290.00个/Cm3"},{ "ID":0,"inputdate":"2017-9-8 13:00:00","setid":"SL001","key":"风速","value":"1.3m/s"},{ "ID":0,"inputdate":"2017-9-8 13:00:00","setid":"SL001","key":"风向","value":"209"},{ "ID":0,"inputdate":"2017-9-8 13:00:00","setid":"SL001","key":"气压","value":"819.8hpa"},{ "ID":0,"inputdate":"2017-9-8 13:00:00","setid":"SL001","key":"湿度","value":"68%"},{ "ID":0,"inputdate":"2017-9-8 13:00:00","setid":"SL001","key":"太阳辐射","value":"652w/m2"},{ "ID":0,"inputdate":"2017-9-8 13:00:00","setid":"SL001","key":"温度","value":"24.4℃"},{ "ID":0,"inputdate":"2017-9-8 13:00:00","setid":"SL001","key":"一小时降水量","value":"0mm"},{ "ID":0,"inputdate":"2017-9-8 13:30:00","setid":"","key":"负离子","value":"1360.00个/Cm3"}]'; $map = json_decode($html,true); /*-----------隐藏该部分为加载当天的所有数据放到一个数组中-----*/ /*--$ismo--为24小时,格式中从0到23为一天*/// $ismo = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23];// for($i=0;$i<count($ismo);$i++){// if($ismo[$i] == 0){// array_push($info,$this->isdateOne($map,"0"));// }// if($ismo[$i] == 1){// array_push($info,$this->isdateOne($map,"1"));// }// if($ismo[$i] == 2){// array_push($info,$this->isdateOne($map,"2"));// }// if($ismo[$i] == 3){// array_push($info,$this->isdateOne($map,"3"));// }// if($ismo[$i] == 4){// array_push($info,$this->isdateOne($map,"4"));// }// if($ismo[$i] == 5){// array_push($info,$this->isdateOne($map,"5"));// }// if($ismo[$i] == 6){// array_push($info,$this->isdateOne($map,"6"));// }// if($ismo[$i] == 7){// array_push($info,$this->isdateOne($map,"7"));// }// if($ismo[$i] == 8){// array_push($info,$this->isdateOne($map,"8"));// }// if($ismo[$i] == 9){// array_push($info,$this->isdateOne($map,"9"));// }// if($ismo[$i] == 10){// array_push($info,$this->isdateOne($map,"10"));// }// if($ismo[$i] == 11){// array_push($info,$this->isdateOne($map,"11"));// }// if($ismo[$i] == 12){// array_push($info,$this->isdateOne($map,"12"));// }// if($ismo[$i] == 14){// array_push($info,$this->isdateOne($map,"14"));// }// if($ismo[$i] == 15){// array_push($info,$this->isdateOne($map,"15"));// }// if($ismo[$i] == 16){// array_push($info,$this->isdateOne($map,"16"));// }// if($ismo[$i] == 17){// array_push($info,$this->isdateOne($map,"17"));// }// if($ismo[$i] == 18){// array_push($info,$this->isdateOne($map,"18"));// }// if($ismo[$i] == 19){// array_push($info,$this->isdateOne($map,"19"));// }// if($ismo[$i] == 20){// array_push($info,$this->isdateOne($map,"20"));// }// if($ismo[$i] == 21){// array_push($info,$this->isdateOne($map,"21"));// }// if($ismo[$i] == 22){// array_push($info,$this->isdateOne($map,"22"));// }// if($ismo[$i] == 23){// array_push($info,$this->isdateOne($map,"23"));// }// }// dump($info); /*--只获取现在一小时中的所有数据并保存到数据库中去--*/ $date_h = date("H");//获取当前的小时---必须大写H,小写则例如---16点->4点 $date_h_one = preg_replace('/^0+/','',$date_h);//根据格式去除小于10前面的0----09->9 $data = $this->isdateOne($map,$date_h_one); //执行函数isdateOne(数组,条件为当前的小时) if($this->isdateOne($map,$date_h_one)){ $data["inputdate"] = date("Y-m-d H");//将时间全部转为当前的年月日时:00:00-------2017-09-08 16:00:00 $where["inputdate"] = date("Y-m-d H"); $r = M($this->model_name)->where($where)->find();//查找在当前时间中是否已经存在一条记录 if($r){ //存在只需要修改 $model_nam = M($this->model_name)->save($data);//添加数据到数据库 if($model_nam){ echo json_encode(array("msg"=>"修改成功")); }else{ echo json_encode(array("msg"=>"数据没有调整")); } }else{ $model_nam = M($this->model_name)->add($data);//添加数据到数据库 if($model_nam){ echo json_encode(array("msg"=>"添加成功")); }else{ echo json_encode(array("msg"=>"添加失败")); } } }else{ } } //是否为一个小时 public function isdateOne($arr,$h){ $info = array();//定义输出的新数组 for($i=0;$i<count($arr);$i++){// dump(date("H",strtotime($arr[$i]["inputdate"]))."---".$h); //获取到该数组中字段inputdate时间的小时与当前时间是否相等 if(date("H",strtotime($arr[$i]["inputdate"])) == $h) { //该条信息中字段key内容包含则将它对应的value赋给新的$info if (strstr($arr[$i]["key"] , '太阳辐射')) { $info["radiation"] = $arr[$i]["value"]; } if (strstr($arr[$i]["key"] , '温度')) { $info["temperature"] = $arr[$i]["value"]; } if (strstr($arr[$i]["key"] , '降水量')) { $info["precipitation"] = $arr[$i]["value"]; } if (strstr($arr[$i]["key"] , '风速')) { $info["windspeed"] = $arr[$i]["value"]; } if (strstr($arr[$i]["key"] , '风向')) { $info["winddirection"] = $arr[$i]["value"]; } if (strstr($arr[$i]["key"] , '湿度')) { $info["humidity"] = $arr[$i]["value"]; } if (strstr($arr[$i]["key"] , '气压')) { $info["pressure"] = $arr[$i]["value"]; } if (strstr($arr[$i]["key"] ,'负离子')) { $info["anion"] = $arr[$i]["value"]; } //时间 $info["inputdate"] = $arr[$i]["inputdate"]; } } //输出数组 return $info; }}
阅读全文
0 0
- php+msql 数据组合并保存到数据库中
- crawler4j 爬虫网页数据并保存到数据库中
- java读取Excel数据,然后写入到txt文件,并批量保存到oracle数据库中
- extjs3中RowEditor保存数据到数据库
- php上传图片的代码并保存到数据库
- php上传图片的代码并保存到数据库
- php文件上传并将其路径保存到数据库
- php上传图片的代码并保存到数据库
- Flash 上传 ByteArray 数据到 php 并保存为图片
- 读取 Excel 数据并保存到服务器数据库
- Java读取接口数据并保存到数据库
- Gson轻松解析json数据并保存到Sqlite数据库
- 上传,解析Excel文件并保存数据到数据库
- Pyspider实例之抓取数据并保存到MySQL数据库
- 微擎php上传excel并且读取数据;保存到数据库
- PHP+MySQL中文数据保存到数据库乱码的解决方法
- 将图片保存到数据库中并下载[原]
- 将图片保存到数据库中并下载[原]
- 重置Mysql用户root密码
- JS中常遇到的浏览器兼容问题和解决方法
- mybatis中方法返回泛型与resultType不一致
- C4996
- imwrite()函数用法简要介绍
- php+msql 数据组合并保存到数据库中
- PHP整洁之道
- Kotlin 之单例
- lua文件读写
- unity和ue4里面的玻璃材质笔记
- 如何搭建科学的MES报表系统?
- Target runtime Apache Tomcat v7.0 is not defined 错误解决
- CSS3的@keyframes用法详解:
- pyspider抓取数据信息