易截截图软件、单文件、免安装、纯绿色、仅160KB

PHP中设计模式的学习笔记

PHP中设计模式的学习笔记
设计模式(Design Pattern)是面向对象设计中反复出现的问题的解决方案,设计模式是一种比一般类的设计更加抽象的一种思想,
它往往涉及到多个类的定义和使用。
在PHP的开发过程中,经常使用到得设计模式包括:简单工厂模式、单元素模式、观察者模式、命令模式、策略模式以及MVC模式等。
 /**
  * 简单工厂模式(Simple Factory Pattern),具体指创建一个类似于工厂的类,通过对类中成员方法的调用返回不同的对象
  * 该模式的核心是工厂类,该类中含有必要的判断逻辑,可以决定在什么时候创建并返回哪个产品的实例化对象
  */
 //定义抽象类Product
 abstract class Product
 {
  abstract function getName();
 }
 //定义具体产品类A
 class ProductA extends Product
 {
  public function getName()
  {
   echo "I am product A";
  }
 }
 //定义具体产品类B
 class ProductB extends Product
 {
  public function getName()
  {
   echo "I am product B";
  }
 }
 //定义工厂类
 class ProductFactory
 {
  static function create($name)
  {
   switch($name)
   {
    case "A":
     return new ProductA();
    case "B":
     return new ProductB();
   }
  }
 }
 $product=ProductFactory::create("A");
 $product->getName();
 echo "<br/>";
 $product=ProductFactory::create("B");
 $product->getName();
 /**
  * 单元素模式(Singleton Pattern)是指对指定的类只能实例化一次。
  * 该模式通常包含一个私有构造方法,用来确保无法通过创建对象或者克隆的方式对其进行实例化
  * 该模式还包含有一个私有静态属性和公有静态方法。
  * 公有静态方法负责对其本身进行实例化,而私有静态属性负责存储实例化的对象。
  */
 class Singleton
 {
  private static $ins


相关文档:

PHP各种Template系统


搜集不全,链接没有全部测试,大部分可用
Easy Template System
http://ets.sourceforge.net/
http://ets.sourceforge.net/ets.pdf
http://prdownloads.sourceforge.net/ets/ets305b.zip?download
Smarty
http://smarty.php.net/
FastTemplate
http://www.thewebmasters.net/php/FastTemplate.phtml
http://www ......

PHP对XML的支持

PHP从PHP5开始,彻底重新编写的和新增了对XML的扩展,如 SAX 解析器、DOM、SimpleXML、XMLReader、XMLWriter 和 XSLT 处理程序。所有这些扩展都以 libxml2 为基础。
=============================
1、DOMDocument对象常用方法:
=============================
a)createElement(elementName)
    该� ......

PHP中REQUIRE和INCLUDE区别

在PHP中使用头文件,会涉及两个函数:include()和require()。这两个函数差别很小,却很重要,所以我们要认真研究一下。
require()函数工作方式与XSSI相类似;不管在程序的哪个部分使用了这个函数,只有程序一开始运行,头文件的内容就被作为程序本身的一部分来处
理。因此,如果您在一个条件判定语句中使用了require()函� ......

PHP 序列化(serialize)格式详解

PHP 序列化(serialize)格式详解
前言
概述
NULL 和标量类型的序列化
简单复合类型的序列化
嵌套复合类型的序列化
自定义对象序列化
Unicode 字符串的序列化
参考文献
1.前言
PHP (从 PHP 3.05 开始)为保存对象提供了一组序列化和反序列化的函数:serialize、unserialize。不过在
PHP 手册中对这两个函数的 ......

40条优化php代码的小实例

40条优化php代码的小实例
1.如果一个方法能被静态,那就声明他为静态的,速度可提高1/4;
2.echo的效率高于print,因为echo没有返回值,print返回一个整型;
3.在循环之前设置循环的最大次数,而非在在循环中;
4.销毁变量去释放内存,特别是大的数组;
5.避免使用像__get, __set, __autoload等魔术方法;
6.requiere_once( ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号