ホームページ >バックエンド開発 >PHPチュートリアル >PHPファクトリーパターンの簡単な実装方法の例

PHPファクトリーパターンの簡単な実装方法の例

jacklove
jackloveオリジナル
2018-06-22 17:02:451676ブラウズ

この記事では、主に PHP ファクトリー モードの簡単な実装方法を紹介し、ファクトリー モードの概念と原理を簡単に説明し、PHP ファクトリー モードの関連操作スキルを例の形式で分析します。必要な友人は参考にしてください。

##この記事の例では、PHP ファクトリ パターンの簡単な実装方法を説明します。次のように、参照用に全員と共有します。

ファクトリ パターンは、必要に応じてオブジェクトを作成するファクトリを確立するクラスです。このメソッドはポリモーフィック プログラミングで非常に重要であり、クラスの動的な置換、構成の変更、等

php サンプルコードは次のとおりです:

//-----------------------------工厂模式-------------------------//
class A{
 public $class;  // public $class = $_GET['c']; //类名
 public $method; // public $method = $_GET['m']; //方法
 public function __construct($class,$method){
  $this->class = ucfirst(strtolower($class)); //对类名进行安全处理
  $this->method = strtolower($method);  //对方法名进行安全处理
  $this->work($this->class,$this->method);
 }
 public function work($class,$method){
  // 把文件命名成 (类名.class.php的形式),就可以通过类名找到文件。
  //include '文件名(文件在别的地方)';  #例如 include './index.php'; 引入文件然后实例化类。
  $c = new $class; //实例化类
  $c->$method(); //访问类的方法
 }
}
class B{
 public function ba(){
  echo &#39;实例化后的ba方法<br>&#39;;
 }
 public function bb(){
  echo &#39;实例化后的bb方法<br>&#39;;
 }
}
class C{
 public function ca(){
  echo &#39;实例化后的ca方法<br>&#39;;
 }
 public function cb(){
  echo &#39;实例化后的cb方法<br>&#39;;
 }
}
//工厂模式的实现
$a = new A(&#39;b&#39;,&#39;ba&#39;);  // 通过类访问方法
$a = new A(&#39;C&#39;,&#39;ca&#39;);  // 通过类访问方法

実行結果:

インスタンス化後の ba メソッド

インスタンス化後の ca メソッド

興味があるかもしれない記事:

PHP カスタム関数が assign() 配列を実装する 割り当ての例

# tp を模倣した PHP で実装された mvc フレームワークの基本設計思想と実装方法の分析


#yii2 インストールの詳細なプロセス_php の例


以上がPHPファクトリーパターンの簡単な実装方法の例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。