PHP工厂模式的三种形式的示例代码详解
<?php// 简单工厂模式interface ICar { function run();}class BMWCar implements ICar { public function run() { echo 'bmw run!<br/>'; }}class AuDiCar implements ICar { public function run() { echo 'audi run!<br/>'; }}/** * 简单工厂 */class FactorySimple { /* public static function createBmw() { return new BMWCar(); } public static function createAudi() { return new AuDiCar(); } */ public static function createCar($type) { switch($type) { case 'bmw': return new BMWCar(); case 'audi': return new AuDiCar(); default: throw new Exception('type error!'); } }}// ------------------------------------------------------// ------------------------------------------------------// 工厂方法模式interface CreateCar { //工厂类接口 function create();}/** * bmw car factoyr */class BmwFactory implements CreateCar { public function create() { return new BMWCar(); }}/** * audi car factory */class AuDiFactory implements CreateCar { public function create() { return new AuDiCar(); }}// ------------------------------------------------------// ------------------------------------------------------// 抽象工厂模式class WhiteBMWCar implements ICar { public function run() { echo 'white bmwcar run!<br/>'; }}class BlackBMWCar implements ICar { public function run() { echo 'black bmwcar run!<br/>'; }}class WhiteAuDiCar implements ICar { public function run() { echo 'white audicar run!<br/>'; }}class BlackAuDiCar implements ICar { public function run() { echo 'black audicar run!<br/>'; }}// 提供一系列的接口interface ICarCreate { function createBmw(); function createAuDi();}/** * create white car */class WhiteCarFactory implements ICarCreate { // white bmw public function createBmw() { return new WhiteBMWCar(); } // whit<i>本文@来#源gaodai$ma#com搞$$代**码网</i><strong>搞代gaodaima码</strong>e audi public function createAuDi() { return new WhiteAuDiCar(); }}/** * create black car */class BlackCarFactory implements ICarCreate { // black bmw public function createBmw() { return new BlackBMWCar(); } // black audi public function createAuDi() { return new BlackAuDiCar(); }}
相关文章:
浅析php工厂模式
php工厂模式简单使用说明
解析PHP工厂模式的好处
以上就是PHP工厂模式的三种形式的示例代码详解的详细内容,更多请关注搞代码gaodaima其它相关文章!