系统共支持7种模式扩展,下面将分别对最常用的几种模式进行介绍。表11-1 CURD操作接口如表11-1所示,参数$data表示传入或返回的数据信息;参数$options表示返回当前操作的模型名称及表前缀。......
2023-11-04
在网站开发中处理时间日期数据是比较烦琐的工作,例如计划日期时差、日期转星期、指定日期倒计时等。系统内置了Date扩展类,能够让日期数据处理变得快捷、简单。接下来将介绍Date类常用的方法。
1.dateDiff(比较日期跨度)
dateDiff成员方法用于比较两个日期数据间隔的时间。返回的结果以“年”、“月”、“日”、“时”、“分”、“秒”作为计算结果。dateDiff方法形式如下。
其中参数date表示与构造函数日期比较的日期数据;参数elaps表示比较跨度。elaps支持6个参数值,用于返回结果值的计算单位,分别为y(年)、M(月)、w(星期)、h(小时)、m(分钟)、s(秒)。dateDiff方法在运算时与构造函数参数进行比较,如以下代码所示。
上述代码运行结果为“1.4246575342466”,即1.4年。
2.timeDiff(以中文显示日期跨度)
timeDiff方法与dateDiff类似,不同的是timeDiff并非以浮点数值为返回结果,而是返回友好的中文格式。timeDiff方法形式如下。
其中参数time表示与构造函数日期比较的日期数据;参数precision表示结果精度。precision参数值与前面介绍的elaps参数值一样。timeDiff的使用如以下代码所示。
上述代码运行结果为“1年前”。使用timeDiff方法,可以方便地模拟微博、日志之类的日期显示应用。
3.yearToCh(年份转中文)
一些中文应用通常需要将数字转换为中文字符串。yearToCh方法能够将常见的数字年份转换为中文格式的年份,并且支持公元元年的转换。yearToCh方法形式如下。(www.chuimin.cn)
其中参数yearStr表示与构造函数日期比较的日期数据;参数flag表示是否显示公元元年。yearToCh方法的使用如以下代码所示。
上述代码运行结果为“公元二零一二”。yearToCh方法不仅可以转换年份,还可以对普通的数字进行转换。
4.magicInfo(计算生肖)
magicInfo方法用于运算构造函数指定日期所属的生肖、星座等信息。magicInfo方法形式如下。
其中参数type表示返回的结果类型,共支持3种类型,分别如下:
➢XZ:返回星座。
➢GZ:返回干支,即甲、乙、丙、丁、戊、己、庚、辛、壬、癸、子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥之间的数值。
➢SX:返回十二生肖。
magicInfo方法的使用如以下代码所示。
上述代码返回结果为“双子座”。读者可以尝试更改type参数值,观察magicInfo运算结果,如果需要多语言,可参考第9章9.3.3节实现。
有关PHP MVC开发实战的文章
系统共支持7种模式扩展,下面将分别对最常用的几种模式进行介绍。表11-1 CURD操作接口如表11-1所示,参数$data表示传入或返回的数据信息;参数$options表示返回当前操作的模型名称及表前缀。......
2023-11-04
Input类库是ThinkPHP提供的一个字符串输入处理扩展,能够方便地对字符串进行安全过滤、转义等,下面将对Input扩展类公开可调用的方法进行介绍。URL协议支持https、ftp等,运行结果为“http://beauty-soft.net”。其中参数string表示需要进行省略处理的字符串;参数length表示省略的字符数。safeHtml通常用于过滤表单输入,防止用户输入HTML代码破坏数据安全性。......
2023-11-04
对于普通的开发者而言,最需要关注Lib目录及Extend目录,接下来分别进行介绍。由于ThinkPHP遵循Apache 2.0协议,意味着PHP开发人员可以通过修改ThinkPHP源代码,以便更适合自己的开发需求,这就要求开发人员必须要对Extend目录下的扩展类库要有深入的认识。......
2023-11-04
前面介绍过,系统内置的行为是系统正常执行的基础,所以开发人员不需要改动这些扩展。事实上系统已经提供了一系列行为扩展,在项目中使用时,直接配置即可。配置项LIMIT_REFLESH_TIMES表示刷新的间隔,以秒为单位。......
2023-11-04
ThinkPHP的一大特点就是扩展灵活,同样行为也是可以自定义扩展的。接下来将深入介绍自定义行为扩展的实现。上述代码是一个名为AutoCheckUserLogin的自定义行为类。最后还需要确保自定义行为类继承于Behavior基类。事实上,AutoCheckUserLogin配置项并不是必需的,也就是说在配置时,自定义行为就已经能够正常运行了,配置项只不过用于实现灵活的配置。此时,再次访问项目,只有Index控制器下的页面受AutoCheckUserLogin自定义行为影响,其他页面则不受影响。......
2023-11-04
将数据全部缓存到Memcached之后,程序在获取数据时并不直接连接数据库,而是连接缓存服务器。服务器关机后,内存中的数据也将会被清空,所以尽量搭建可容灾的Memcached服务器集群。......
2023-11-04
PHP 5后的版本借鉴了大量Java思想,得益于早期PHP面向过程编程支持,PHP在实现MVC设计中变得较灵活、易用。但是随着PHP 5.x的到来,各种MVC框架的出现,尤其Zend推出的Zend Framework,彻底地改变了PHP状况,使得PHP也能够实现优雅的Web编程。MVC设计模式将使代码将变得简洁。但是在MVC设计模式中,Index称为动作。当然,MVC只是一种设计模式,在开源的PHP编程世界中,已经拥有众多的MVC编程框架。......
2023-11-04
相关推荐