PSR-0规范命名空间必须与绝对路径一致
类名首字母必须大写
除了入口文件外,其他‘.php’文件必须只有一个类
PHP链式操作必须在每个function里return $this;
三种基础设计模式:工厂模式
单例模式
注册树模式
①单例模式
作为对象的创建模式,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。
应用场景:数据库操作,避免大量的new 操作消耗资源,还可以减少数据库连接这样就不容易出现too many connections情况
系统中需要一个类全局控制某些配置信息(如zendFramework的FrontController)
在一次页面请求中,便于调试。(所有的数据库操作都集中在一个类中,可在类中设置钩子,输出日志,从而避免导出var_dump,echo)
实现:(三私一公),公开的静态方法为对象的接口,私有属性用于存放唯一的单例对象。私有化构造方法和克隆方法保证只存在一个单例。
优点:静态方法可以在全局访问内访问,当我们需要一个单例模式的对象,只需要调用静态方法获取先前实例化的对象,无需重新实例化。
②工厂模式
将对象的生产从直接new 一个对象,改成通过调用一个工厂方法生产。(代码若需要修改new的对象时,无需多处修改,只需修改生成对象方法)
若需要实例化的对象可选择不同的类,可省略if else多层判断,给工厂方法传入对应的参数,利用多态性实例化对应的类。
③注册树模式
用于创建对象的时候我们的对象与相应的变量进行绑定。注册树模式的类必须要有一个set方法用来绑定实例化对象,get方法取这个实例化对象,_unset方法销毁绑定的实例化对象。