//处理时间段,将ISODate("2014-10-09T18: 37: 50.0Z") 兑换 2014-10-09 18:37:50这样的格式//截至处理6层树形结构数据,当多维数组key,$product_date_col中的随意一个字符,那么就会被处理。

public static function processMongoGetDate($product){ foreach($product as $k1=>$v1){ if(!is_array($v1)&& !is_object($v1)){ }else{ //if(self::contentDate($k1,$product_date_col)){ if($v1->sec){ $v1 = date('Y-m-d H:i:s', $v1->sec); } $product[$k1] = $v1; //} foreach($v1 as $k2=>$v2){ if(!is_array($v2)&& !is_object($v2)){ }else{ //if(self::contentDate($k2,$product_date_col)){ if($v2->sec){ $v2 = date('Y-m-d H:i:s', $v2->sec); } $product[$k1][$k2] = $v2; //} foreach($v2 as $k3=>$v3){ if(!is_array($v3)&& !is_object($v3)){ }else{ //if(self::contentDate($k3,$product_date_col)){ if($v3->sec){ $v3 = date('Y-m-d H:i:s', $v3->sec); } $product[$k1][$k2][$k3] = $v3; //} foreach($v3 as $k4=>$v4){ if(!is_array($v4)&& !is_object($v4)){ }else{ //if(self::contentDate($k4,$product_date_col)){ if($v4->sec){ $v4 = date('Y-m-d H:i:s', $v4->sec); } $product[$k1][$k2][$k3][$k4] = $v4; //} foreach($v4 as $k5=>$v5){ if(!is_array($v5)&& !is_object($v5)){ }else{ //if(self::contentDate($k5,$product_date_col)){ if($v5->sec){ $v5 = date('Y-m-d H:i:s', $v5->sec); } $product[$k1][$k2][$k3][$k4][$k5] = $v5; //} foreach($v5 as $k6=>$v6){ if(!is_array($v6)&& !is_object($v6)){ }else{ //if(self::contentDate($k6,$product_date_col)){ if($v6->sec){ $v6 = date('Y-m-d H:i:s', $v6->sec); } $product[$k1][$k2][$k3][$k4][$k5][$k6] = $v6; //} } } } } } } } } } } } } return $product; } /* 作用:前端form传递过来的数据,不管保存,还是查询,都须要转化成mongo的格式 * 处理:处理的为,1.数字字符串转换成float类型。2.日期使用\MongoDate()转换成mongo格式的日期。

* 结果:此函数不过转换 字段类型。最多为6层树形结构表。 */ public static function processMongoSetData($data,$float_array){ //?gte ?lte $product = object_to_array($data); $productfloat = $float_array; foreach($product as $k1=>$v1){ if(!is_array($v1)&& !is_object($v1)){ if(in_array($k1,$productfloat)){ if(is_numeric($v1)){ $v1 = floatval($v1); $product[$k1] = $v1; } } if(is_time($v1)){ $product[$k1] = new \MongoDate(strtotime($v1)); } }else{ foreach($v1 as $k2=>$v2){ if(!is_array($v2)&& !is_object($v2)){ if(in_array($k2,$productfloat)){ if(is_numeric($v2)){ $v2 = floatval($v2); $product[$k1][$k2] = $v2; } } if(is_time($v2)){ $product[$k1][$k2] = new \MongoDate(strtotime($v2)); } }else{ foreach($v2 as $k3=>$v3){ if(!is_array($v3)&& !is_object($v3)){ if(in_array($k3,$productfloat)){ if(is_numeric($v3)){ $v3 = floatval($v3); $product[$k1][$k2][$k3] = $v3; } } if(is_time($v3)){ $product[$k1][$k2][$k3] = new \MongoDate(strtotime($v3)); } }else{ foreach($v3 as $k4=>$v4){ if(!is_array($v4)&& !is_object($v4)){ if(in_array($k4,$productfloat)){ if(is_numeric($v4)){ $v4 = floatval($v4); $product[$k1][$k2][$k3][$k4] = $v4; } } if(is_time($v4)){ $product[$k1][$k2][$k3][$k4] = new \MongoDate(strtotime($v4)); } }else{ foreach($v4 as $k5=>$v5){ if(!is_array($v5)&& !is_object($v5)){ if(in_array($k5,$productfloat)){ if(is_numeric($v5)){ $v5 = floatval($v5); $product[$k1][$k2][$k3][$k4][$k5] = $v5; } } if(is_time($v5)){ $product[$k1][$k2][$k3][$k4][$k5] = new \MongoDate(strtotime($v5)); } }else{ foreach($v5 as $k6=>$v6){ if(!is_array($v6)&& !is_object($v6)){ if(in_array($k6,$productfloat)){ if(is_numeric($v6)){ $v6 = floatval($v6); $product[$k1][$k2][$k3][$k4][$k5][$k6] = $v6; } } if(is_time($v6)){ $product[$k1][$k2][$k3][$k4][$k5][$k6] = new \MongoDate(strtotime($v6)); } }else{ } } } } } } } } } } } } return $product; }

版权声明:本文博客原创文章。博客,未经同意,不得转载。

mongodb - 前端form表单数据传输,在保存和清除的数据格式的处理程序的 - 非递归...相关推荐

  1. 前端form表单上传图片等信息,python后端接收

    前端form表单上传图片等信息,python后端接收. 最近总需要做关于图片上传的东西.一直百度,这次想自己记录一下. HTML代码: <form class="box" a ...

  2. 通过前端form表单将信息提交至数据库

    (可以考虑把所有的附庸步骤放到最后面) 待解决问题 返回的集合可以用List类型变量接住 一.创建前端页面&给页面命名 二.前端页面设计 知识储备: 什么是http HTTP是什么?HTTP是 ...

  3. 前端form表单提交的方式

    1.无刷新页面提交表单 表单可实现无刷新页面提交,无需页面跳转,如下,通过一个隐藏的iframe实现,form表单的target设置为iframe的name名称, form提交目标位当前页面ifram ...

  4. 前端——Form表单

    表单相关的元素和属性 HTML使用表单向服务器提交请求,表单.表单控件的主要作用就是收集用户输入,当用户提交表单时,用户输入内容将被作为请求参数提交到远程服务器. 一.Form元素 Form元素用于生 ...

  5. 基于django源码自定义前端form表单样式

    在项目中,我们通常会用django中的modelform帮助我们快速生成前端的样式,提升开发效率.但是有时,当我们需要让一些字段,显示一些特殊的样式时,就需要对modelform中的默认样式,手动进行 ...

  6. 利用前端form表单的上传文件来发送邮箱附件

    前端代码 <body> <form action="http://localhost:8080/email/form" method="post&quo ...

  7. 关于解决form表单记录上次保存填写记录清空

    传进来的是一个HTML的Table的ID. 1 function doReset(tableId){ 2 var tbl_content = document.getElementById(table ...

  8. html表单怎么设置编码,form 表单 设置编码和页面编码

    var isIE=!!window.ActiveXObject; if(isIE && document.charset!="utf-8")location.rel ...

  9. form表单与ajax的两种提交方式

    一.form表单与ajax两种提交方式使用的场景: 1)form表单提交适用于跳转到另一个页面,form标签中的数据通过submit的方式提交到后台,提交成功后会跳转到另一个页面,但没有返回值. 2) ...

最新文章

  1. Pyinstaller 打包 torch 后执行失败 OSError: could not get source code
  2. 计算C#程序执行时间
  3. spring如何解决循环依赖
  4. Python变量本质
  5. nodejs mysql 增删改查_Nodejs操作MySQL-增删改查
  6. leetcode182. 查找重复的电子邮箱(SQL)
  7. 六、Python第六课——Python中的for循环及数字列表
  8. python3字符串转数字_Python3基础语法和基本数据类型
  9. java script 月日年转年月日_javasrcipt日期一些方法和格式转化
  10. 花呗:已有5700万人正在使用花呗账单助手功能
  11. unity velocity_Unity动画系统详解5:BlendTree混合树是什么?
  12. 【转】Python自动化测试 (一) Eclipse+Pydev 搭建开发环境
  13. SqlServer查询出数据库中所有的表及其字段属性
  14. python编辑程序用print函数输出中国加油武汉加油_python练习1之print函数
  15. 打开Excle出现配置进度解决方法
  16. JSON值的获取以及遍历 [JSON]
  17. android系统9有OTG功能吗,随身HiFi 安卓OTG功能在音频上的妙用
  18. HDU - 1548 A strange lift
  19. 我的阿里秋招之路——阿里实习offer+校招offer
  20. 基于JAVA面相高校学生的图书共享平台计算机毕业设计源码+数据库+lw文档+系统+部署

热门文章

  1. 云计算时代下的手机未来
  2. ios5 中文键盘高度变高覆盖现有ui问题的解决方案(获取键盘高度的方法)
  3. java b2b2c shop 多用户商城系统源码- eureka集群整合hystrix框架
  4. SSL连接并非完全问题解决
  5. iOS:NSBundle的具体介绍
  6. 推荐10个很棒的AngularJS学习指南
  7. 缩小门店、打造智慧供应链,沃尔玛准备这样迎接新零售时代
  8. tomcat配置访问项目时不需要加项目名称
  9. 【Java学习笔记之二十五】初步认知Java内部类
  10. tomcat升级后报错: Invalid character found in the request target.