PHP_工厂模式

Posted 张八百_php学习笔记

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP_工厂模式相关的知识,希望对你有一定的参考价值。

实例化类,先需要引入类文件,但是有时候我们并不知道可能要用到那些类,如果将所有类文件全部引入,会造成资源浪费,这时候可以采用工厂模式,专门用于 自动加载、实例化 类。

实例代码:

注:案例中假设有一个Factory文件夹里存放了一些类文件

<?php

//创建一个工厂类,批量创建对象
class Factory{

    //创建一个静态方法
    static function func1($className){

        //将需要引入文件地址保存到$path
        $path = ‘Factory/‘.$className.‘.php‘;
        //文件不存在就结束
        if (!is_file($path)) {
            //echo ‘文件不存在‘;
            return false;
        }else{
            /**
             * 文件存在则引入文件
             *将文件里的类实例化保存到$obj
             *返回实例化结果
             */
            include $path;
            $obj = new $className;
            return $obj;
        }
    }
}

//通过工厂实例化一个对象
$a = Factory::func1(‘A‘);
var_dump($a);

 

以上是关于PHP_工厂模式的主要内容,如果未能解决你的问题,请参考以下文章

PHP设计模式_工厂模式

PHP_工厂模式

php设计模式 工厂单例注册树模式

PHP 工厂模式

PHP基础设计模式——工厂模式

php单例模式与工厂模式