-
原型模式,只需實例化一次,從而節省內存開銷。
$prototype = new IMooc\Canvas();
$prototype->init(); 初始化方法。
$canvas1= clone $prototype;
$canvas2 = clone $prototype;
通過引用clone的方式。
查看全部 -
<?php
$stack = new SplStack(); //堆棧模式
$stack->push("aaa");
$stack->push("bbb");
// echo $stack->pop();
// echo $stack->pop();
$queue = new SplQueue(); //隊列
$queue->enqueue('aaa');
$queue->enqueue('bbb');
// echo $queue->dequeue();
// echo $queue->dequeue();
$heap = new SplMinHeap(); //入棧
$heap->insert('aaa');
$heap->insert('bbb');
// echo $heap->extract();
// echo $heap->extract();
$array = new SplFixedArray(10); //數組
$array[0] = 'aaa';
$array[9] = 'zzz';
// print_r($array);
//PHP 鏈式操作 $dbModel->file()->where()->order()->limit();
//方法最后加 return $this;
class StringHelper?
{
? private $value;
? function __construct($value)
? {
? ? $this->value = $value;
? }
? function __call($function, $args){
? ? array_unshift($args, $this->value);
? ? $this->value = call_user_func_array($function, $args);
? ? return $this;
? }
? function strlen() {
? ? return strlen($this->value);
? }
}
$str = new StringHelper("xxx");
echo $str->trim('0')->strlen();
?>
查看全部 -
自動加載類
function? autolod($class){
require __DIR__.'/'.$class.'.php';
}
spl_autoload_register('autoload');
查看全部 -
easy php查看全部
-
protected $db;? ?//申明一個保護屬性
private function __construct()
{
//構造一個私有方法
}
static function getInstance()? ? ?//?getInstance 獲取實例
{
if(self::$db){
????return self::$db;
}else{
????self::$db = new self();
????return self::$db
}
}
查看全部 -
工廠模式 單例模式查看全部
-
__set,__get 設置或者獲取不存在的屬性 __call,__callStatic 調用不存在的方法或類的方法 __toString 把類當字符串使用 __invoke 把類當函數使用查看全部
-
__autoload()函數已經廢棄查看全部
-
設計模式跟語言沒關系,是一種思想查看全部
-
開發符合psr-0規范的基礎框架
查看全部 -
裝飾器(Decorator),可以動態地添加修改類的功能
一個類提供了一項功能,如果要在修改并添加額外的功能,傳統的編程模式,需要寫一個子類繼承它,并重新實現類的方法
使用裝飾器模式,僅需要在運行時添加一個裝飾器對象即可實現,可以實現最大的靈活性
查看全部 -
在本案例中index.php中的Page類即使用策略的環境,它在解決某個問題(即實現某個方法)時可以采用多種策略。在環境類中維持一個對抽象策略類的引用實例,用于定義所采用的策略。
UserStrategey即抽象策略類,它為所支持的算法聲明了抽象方法,是所有策略類的父類,它可以是抽象類或具體類,也可以是接口。環境類通過抽象策略類中聲明的方法在運行時調用具體策略類中實現的算法。
FemaleUserStrategy和MaleUserStrategy是具體的策略類,它實現了在抽象策略類中聲明的算法,在運行時,具體策略類將覆蓋在環境類中定義的抽象策略類對象,使用一種具體的算法實現某個業務處理。
查看全部 -
工廠模式獲取對象
查看全部 -
定義代理類
查看全部 -
入口文件調用代理
查看全部
舉報