Yii2 rules 添加时间比较功能

php比较类文件:yiisoft\yii2\validators\CompareValidator.php

JS比较类文件: yiisoft\yii2\assets\yii.validation.js

原来的比较 只包含integer 和 string 两种情况

通过添加类型 来增加时间的比较

前台用的是js时间选择插件 时间格式为 YYYY-hh-dd hh:ii:ss 之类的

PHP中用的是转换为时间戳比较时间   strtotime()

JS中 用的是 new Date() 比较时间(一定要 new 否则可能出问题)

if (options.type === ‘number‘) {
         value = parseFloat(value);
         compareValue = parseFloat(compareValue);
}else if(options.type === ‘strtotime‘){  // 这里是新添加的
         value = new Date(value);
          compareValue = new Date(compareValue);
}
if ($type === ‘number‘) {
    $value = (float) $value;
    $compareValue = (float) $compareValue;
}elseif($type === ‘strtotime‘){  // 这里是新添加的
    $value = strtotime($value);
    $compareValue = strtotime($compareValue);
} else {
    $value = (string) $value;
    $compareValue = (string) $compareValue;
}

更新JS文件后 一定要删除缓存哦!

时间: 2024-10-25 20:25:58

Yii2 rules 添加时间比较功能的相关文章

无参装饰器为被装饰函数添加统计时间的功能

#需求 定义无参装饰器为被装饰函数添加统计时间的功能 1 import time #导入时间模块 2 3 def timer(func): 4 def wapper(): 5 start = time.time() 6 func() 7 stop = time.time() 8 index_spend_time = stop - start 9 print(index_spend_time) 10 return wapper 11 @timer 12 def index(): 13 time.s

用汇编语言给XP记事本添加“自动保存”功能 good

[文章标题]: 用汇编语言给XP记事本添加“自动保存”功能 [文章作者]: newjueqi [作者邮箱]:[email protected] [作者QQ]:190678908 [使用工具]: OD, LordPE,eXeScope[操作平台]: XP-SP2[作者声明]: 本人平时一般的文字处理都是用记事本(用Word好像大材小用了),电脑自从拿去大修后有时候会莫名其妙的重启,弄得经常重写(本人常常忘记保存^-^),于是想给记事本增加类似于Word的自动保存功能,以图个方便.失误之处敬请诸位大

不能因为为了添加一个新功能,影响到旧的功能

涉及到后台的, 一般都是要跟数据库打交道的大型数据量的处理问题.以类 client - server 为基础的架构, 或者变形后的架构. 客户端处理用户的输入和数据, 然后大量的客户端(多个客户端的多种数据) 反馈到服务端统一处理和协调, 然后服务端对客户端发出相应的指令.其中 后台程序 代表的就是服务端的程序. 包含以下几点:1. 网络通信,  要跟远程的client打交道,只能用网络2. 并发 和 并行处理.0.. 多个客户端可能在同一时间同时需要处理同一个类型的数据, 谁先谁后,谁的有效谁

yii2中添加验证码的实现方法

本文实例讲述了yii2中添加验证码的实现方法.分享给大家供大家参考,具体如下: 首先,在模型中添加验证码字段: ? 1 2 3 public function rules(){ return ['verifyCode', 'captcha'], } 其次,可以在函数attributeLabels中添加前台页面中验证码的字段名称: ? 1 2 3 public function atrributeLabels(){ return ['verifyCode'=>'Verification Code'

Web开发从零单排之二:在自制电子请帖中添加留言板功能,SAE+PHP+MySql

在上一篇博客中介绍怎样在SAE平台搭建一个html5的电子请帖网站,收到很多反馈,也有很多人送上婚礼的祝福,十分感谢! web开发从零学起,记录自己学习过程,各种前端大神们可以绕道不要围观啦 大婚将至,各种事情很多,今天终于驱动自己把上次遗留的内容补充完 奉上在电子请帖中添加留言板的功能简介,采用php脚本语言和mysql数据库,同样在新浪的SAE平台下,可以节省很多部署和维护工作 在SAE的个人项目管理界面,从MySql页面点击"管理MySql",进入SAE提供的mysql数据库管理

worklight 中添加时间控件

在我们使用worklight开发的过程中,由于文档的不开源和插件的缺少,总是自己琢磨很多东东,更有胜者 需要调用源代码实现某些不易实现的功能.在这里把实现的功能代码贴出来,如有不足之处还望指正! 实现的步骤就不多说了,上篇中已经解说 实现日期插件 1 public class DatePickerPlugin extends CordovaPlugin { 2 3 private static final CordovaActivity ctx = null; 4 private static

添加顶踩功能

phpcms如何添加顶踩功能步骤: 1.在后台模型增加两个字段,一个goodpost,一个badpost;这个步骤简单,按后台新增加字段下一步就行了. 2.在模块/phpcms/modules/content/增加扩展函数newindex.php,代码如下: <?php defined('IN_PHPCMS') or exit('No permission resources.'); class newindex{ function __construct(){ $this->db=pc_ba

使用EasyUI实现添加和删除功能

        增删该查是任何一个项目都少不了的功能操作,这篇博文主要简介一下如何使用EasyUI实现添加和删除功能.         首先,导入EasyUI的js代码: <link href="~/EasyuiSource/themes/default/easyui.css" rel="stylesheet" /> <link href="~/EasyuiSource/themes/icon.css" rel="st

使用prismjs为网站添加代码高亮功能

prismjs 是一款轻量.可扩展的代码语法高亮库,使用现代化的 Web 标准构建,使用 Prismjs 可以快速为网站添加代码高亮功能,支持超过113中编程语言,还支持多种插件,是简洁.高效的代码高亮解决方案.科技爱好者博客就是使用了Prism.js 实现漂亮的代码语法高亮功能,本文教你如何在wordpress上快速使用Prismjs实现代码高亮. 一.下载JS和CSS文件并上传到网站根目录. 在Prismjs网站下载页面下载需要的JS和CSS文件,下载页面: http://prismjs.c