摘要: 概述 在面向对象编程中,PHP提供了一系列的魔术方法,这些魔术方法为编程提供了很多便利。PHP中的魔术方法通常以__(两个下划线)开始,并且不需要显示的调用而是由某种特定的条件出发。 开始之前 在总结PHP的魔术方法之前先来定义两个类,以便后边示例使用: Device类有四个成员属性和两个成员方法。 阅读全文
posted @ 2018-07-04 14:50 周国伟 阅读(3518) 评论(0) 推荐(0)
摘要: (PHP 4, PHP 5, PHP 7) list — 把数组中的值赋给一组变量 array list ( mixed $var1 [, mixed $... ] ) 像 array() 一样,这不是真正的函数,而是语言结构。 list() 可以在单次操作内就为一组变量赋值。 Note: list 阅读全文
posted @ 2018-07-04 14:25 周国伟 阅读(2299) 评论(0) 推荐(0)
摘要: /** * 计算一年有多少周,每周从星期一开始, * 如果最后一天在周四后(包括周四)算完整的一周,否则不计入当年的最后一周 * 如果第一天在周四前(包括周四)算完整的一周,否则不计入当年的第一周 * @param int $year * return int */ function week($year){ $year_endday = mktime(0,0,0,12,31... 阅读全文
posted @ 2018-07-04 11:51 周国伟 阅读(1098) 评论(0) 推荐(0)
摘要: PHP单例模式,就是一个对象只被生成一次,但该对象可以被其它众多对象使用。单例模式使用最多的场景,是数据库连接操作。我们知道,生成一个对象的操作是用new函数来实现,但是new对象都会消耗内存,而且有时候对同一个对象,在不同文件中可能会生成多次,这就造成了系统资源的浪费。然而使用单例模式,则可以很好 阅读全文
posted @ 2018-07-04 11:31 周国伟 阅读(170) 评论(0) 推荐(0)
摘要: PHP工厂模式就是用一个工厂方法来替换掉直接new对象的操作。 在传统习惯中,如果要生成一个类的话,在代码中直接new一个对象,比如: 下面介绍工厂模式的操作方法: 那么,当我们想创建一个数据库类的话,就可以使用这样的方法: 简单工厂模式比直接new一个对象的好处是,比如Database这个类在很多 阅读全文
posted @ 2018-07-04 11:22 周国伟 阅读(174) 评论(0) 推荐(0)
摘要: 什么是PHP命名空间? (PHP 5 >= 5.3.0, PHP 7) 什么是命名空间?从广义上来说,命名空间是一种封装事物的方法。在很多地方都可以见到这种抽象概念。例如,在操作系统中目录用来将相关文件分组,对于目录中的文件来说,它就扮演了命名空间的角色。具体举个例子,文件 foo.txt 可以同时 阅读全文
posted @ 2018-07-04 08:41 周国伟 阅读(195) 评论(0) 推荐(0)