服务器之家

服务器之家 > 正文

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

时间:2019-12-02 13:50     来源/作者:PHP教程网

代码如下:


<?php 
/** 
* 委托模式 示例 

* @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(); 
?> 

相关文章

热门资讯

玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
配置IIS网站web服务器的安全策略配置解决方案
配置IIS网站web服务器的安全策略配置解决方案 2019-05-23
Nginx服务器究竟是怎么执行PHP项目
Nginx服务器究竟是怎么执行PHP项目 2019-05-24
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
返回顶部