最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

三個(gè)類概括PHP的五種設(shè)計(jì)模式

 更新時(shí)間:2012年09月05日 23:26:13   作者:  
PHP的五種設(shè)計(jì)模式主要包括工廠模式,單元素模式,觀察者模式,命令鏈模式,策略模式
工廠模式
單元素模式
觀察者模式
命令鏈模式
策略模式
復(fù)制代碼 代碼如下:

class people {
private $name = '';
private $user = null;
private function __constract($name){/*此處private定義輔助實(shí)現(xiàn) 單元素模式*/
$this->name = $name;
}
public static function instance($name){/*此方法實(shí)現(xiàn) 工廠模式*/
static $object = null;/*此變量實(shí)現(xiàn) 單元素模式*/
if (is_null($object))
$object = new people($name);
return $object;
}
public function work_in($who=null)
{
if (is_null($who)) echo 'error';
else {
$this->user[] = $who;/*此數(shù)組變量實(shí)現(xiàn) 觀察者模式*/
echo $who->work();/*此方法調(diào)用實(shí)現(xiàn) 策略模式*/
}
}
public function on_action($which=''){
if (empty($which)) echo 'error';
else {
foreach ($this->user as $user)
$user->action($which);/*此方法調(diào)用實(shí)現(xiàn) 命令鏈模式*/
}
}
}
$people = people::instance('jack');
$people->work_in(new student);
$people->work_in(new teacher);
$people->on_action('eat');
class student {
function work(){
echo '<br/>我是學(xué)生,朝九晚五。';
}
function action($which){
if (method_exists($this, $which)) return $this->$which();
else echo 'you are wrong!';
}
function eat(){
echo '<br/>我是學(xué)生,只能吃套餐。';
}
}
class teacher {
function work(){
echo '<br/>我是老師,晚上備課最忙。';
}
function action($which){
if (method_exists($this, $which)) return $this->$which();
else echo 'i can not do it!';
}
function eat(){
echo '<br/>我是老師,可以每天吃大餐。';
}
}

相關(guān)文章

  • php中使用$_REQUEST需要注意的一個(gè)問題

    php中使用$_REQUEST需要注意的一個(gè)問題

    本篇文章介紹了,php中使用$_REQUEST需要注意的一個(gè)問題,需要的朋友參考下
    2013-05-05
  • 深入理解PHP變量的值類型和引用類型

    深入理解PHP變量的值類型和引用類型

    在PHP中,大部分變量類型,如字符串,整型,浮點(diǎn),數(shù)組等都是值類型的,而類和對象是引用類型,在使用的時(shí)候,需要注意這一點(diǎn)。
    2015-10-10
  • 一個(gè)基于phpQuery的php通用采集類分享

    一個(gè)基于phpQuery的php通用采集類分享

    這是自己以前寫的一個(gè)php的采集類,自己一直在用,自我感覺很簡單很強(qiáng)大,只要懂一點(diǎn)點(diǎn)選擇器的知識(shí)就可以采集任何頁面了,也支持https頁面,做簡單的采集足夠用了
    2014-04-04
  • PHP連接局域網(wǎng)MYSQL數(shù)據(jù)庫的簡單實(shí)例

    PHP連接局域網(wǎng)MYSQL數(shù)據(jù)庫的簡單實(shí)例

    這篇文章介紹了PHP連接局域網(wǎng)MYSQL數(shù)據(jù)庫的簡單實(shí)例,有需要的朋友可以參考一下
    2013-08-08
  • Yii框架操作cookie與session的方法實(shí)例詳解

    Yii框架操作cookie與session的方法實(shí)例詳解

    這篇文章主要介紹了Yii框架操作cookie與session的方法,結(jié)合實(shí)例形式詳細(xì)分析了Yii針對cookie與session操作的常用方法及相關(guān)注意事項(xiàng),需要的朋友可以參考下
    2019-09-09
  • thinkPHP訂單數(shù)字提醒功能的實(shí)現(xiàn)方法

    thinkPHP訂單數(shù)字提醒功能的實(shí)現(xiàn)方法

    這篇文章主要介紹了thinkPHP訂單數(shù)字提醒功能的實(shí)現(xiàn)方法,涉及thinkPHP數(shù)據(jù)庫查詢、遍歷及前臺(tái)顯示相關(guān)功能實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2016-12-12
  • laravel開發(fā)中跨域的解決方案

    laravel開發(fā)中跨域的解決方案

    最近在開發(fā)中遇到了跨域的需求,通過查找相關(guān)資料找到了相關(guān)的解決方法了,所以下面這篇文章主要給大家介紹了關(guān)于laravel開發(fā)中跨域的解決方案,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面來一起看看吧。
    2017-10-10
  • PHP中的使用curl發(fā)送請求(GET請求和POST請求)

    PHP中的使用curl發(fā)送請求(GET請求和POST請求)

    本篇文章主要介紹了PHP中的使用curl發(fā)送請求(GET請求和POST請求),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-02-02
  • Django中datetime的處理方法(strftime/strptime)

    Django中datetime的處理方法(strftime/strptime)

    這篇文章主要介紹了Django中datetime的處理方式(strftime/strptime),本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2018-07-07
  • php過濾敏感詞的示例

    php過濾敏感詞的示例

    這篇文章主要介紹了php過濾敏感詞的示例,需要的朋友可以參考下
    2014-03-03

最新評論

巴东县| 潞城市| 铅山县| 二手房| 乌拉特中旗| 青神县| 安远县| 滁州市| 临潭县| 民乐县| 来凤县| 历史| 霞浦县| 和田市| 大安市| 若尔盖县| 莱州市| 夏邑县| 大竹县| 温宿县| 化隆| 闽侯县| 漯河市| 堆龙德庆县| 长寿区| 米脂县| 秦皇岛市| 永康市| 邳州市| 当涂县| 阿拉尔市| 乐清市| 维西| 甘肃省| 邹城市| 旬邑县| 五常市| 班戈县| 梧州市| 芦溪县| 澜沧|