-
20161101查看全部
-
編程字體查看全部
-
數據對象映射模式就是將sql的操作轉化為對象的操作,查看全部
-
策略模式實現分支邏輯的處理查看全部
-
命名規(guī)范查看全部
-
策略模式說明查看全部
-
PSR-0規(guī)范: 1.命名空間必須與絕對路徑一致 2.類名首字母必須大寫 3.除入口文件,其他的.php文件必須只有一個類,不能有執(zhí)行或者可執(zhí)行代碼 開發(fā)符合PSR-0規(guī)范的基礎框架 1.全部是用命名空間 2.所有php文件必須自動載入,不能有include/require 3.只有一個單一入口 index.php查看全部
-
單例模式:私有化構造方法,提供獲取本類對象的方法查看全部
-
鏈式寫法:return $this;查看全部
-
2323查看全部
-
最早的php項目都是通過手工include或者require來載入依賴的文件的,當項目變大時,一個文件要依賴幾十個php類,就需要寫幾十行require或者include語句,這會導致管理很不方便,也會導致一些錯誤。比如某個類刪除了,但是require這個文件的語句沒有去掉,會報一個致命錯誤。這時候可以采用類自動載入的方式處理這種類依賴關系。function __autoload() 5.3之后采用了更先進的商spl_autoload_register()函數 spl_autoload_register()函數取代了autoload()函數,可以兼容多個框架中的多個類的自動載入,避免出現__autoload()在自動載入時會出現函數重復定義的報錯查看全部
-
__autoload自動載入函數 __DIR__當前路徑查看全部
-
* 適配器----利用接口,將不同的類 組裝一組有相同名稱的方法。 */ require_once(__DIR__."/init.php"); $adapter = new \Modules\Adapter\Adapter_opr1(); echo $adapter->do_fun1().'<BR>'; $adapter = new \Modules\Adapter\Adapter_opr3(); echo $adapter->do_fun2().'<BR>'; $adapter = new \Modules\Adapter\Adapter_opr2(); echo $adapter->do_fun3().'<BR>'; //工廠模式下 進行適配 echo "<hr>"; $c_adapter_factory = new \Modules\Adapter\Factory(); $c_adpter = $c_adapter_factory::create_adapter('opr1'); echo $c_adpter->do_fun1().'<BR>'; $c_adpter = $c_adapter_factory::create_adapter('opr3'); echo $c_adpter->do_fun2().'<BR>'; $c_adpter = $c_adapter_factory::create_adapter('opr2'); echo $c_adpter->do_fun3().'<BR>';查看全部
-
適配器就是利用接口,將不同的類串聯起來,根據需要的功能重寫一組方法。 感覺應該和工廠結合起來,這樣不用判斷具體適配到哪個類,直接在工廠那里初始化就行。 namespace Modules\Adapter; class Factory { public static function create_adapter($adapter_name) { $class = null; switch($adapter_name) { case "opr1": $class = new Adapter_opr1(); break; case "opr2": $class = new Adapter_opr2(); break; case "opr3": $class = new Adapter_opr3(); break; default: // ----天知道這里要干什么?。。? break; } return $class; } } 這樣,程序里只用訪問一個工廠類即可查看全部
-
__get,__set查看全部
舉報
0/150
提交
取消