• 技术文章 >php教程 >php手册

    php设计模式 Delegation(委托模式)

    2016-06-21 08:54:13原创293
    复制代码 代码如下:


    /**
    * 委托模式 示例
    *
    * @create_date: 2010-01-04
    */
    class PlayList
    {
    var $_songs = array();
    var $_object = null;
    function PlayList($type)
    {
    $object = $type."PlayListDelegation";
    $this->_object = new $object();
    }
    function addSong($location,$title)
    {
    $this->_songs[] = array("location"=>$location,"title"=>$title);
    }
    function getPlayList()
    {
    return $this->_object->getPlayList($this->_songs);
    }
    }
    class mp3PlayListDelegation
    {
    function getPlayList($songs)
    {
    $aResult = array();
    foreach($songs as $key=>$item)
    {
    $path = pathinfo($item['location']);
    if(strtolower($item['extension']) == "mp3")
    {
    $aResult[] = $item;
    }
    }
    return $aResult;
    }
    }
    class rmvbPlayListDelegation
    {
    function getPlayList($songs)
    {
    $aResult = array();
    foreach($songs as $key=>$item)
    {
    $path = pathinfo($item['location']);
    if(strtolower($item['extension']) == "rmvb")
    {
    $aResult[] = $item;
    }
    }
    return $aResult;
    }
    }
    $oMP3PlayList = new PlayList("mp3");
    $oMP3PlayList->getPlayList();
    $oRMVBPlayList = new PlayList("rmvb");
    $oRMVBPlayList->getPlayList();
    ?>



    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:PHP性能优化贴士产生高度优化代码 下一篇:php设计模式 State (状态模式)
    Web大前端开发直播班

    相关文章推荐

    • 在WAS CE上运行PHP• PHP加密解密函数实例教程• php SESSION类(购物车类)• Apache Reference Manual (5)• 这是一些使用频率比较高的PHP函数

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网