<BR><?php <BR>/** <BR>* 委托模式 示例 <BR>* <BR>* @create_date: 2010-01-04 <BR>*/ <BR>class PlayList <BR>{ <BR>var $_songs = array(); <BR>var $_object = null; <BR>function PlayList($type) <BR>{ <BR>$object = $type."PlayListDelegation"; <BR>$this->_object = new $object(); <BR>} <BR>function addSong($location,$title) <BR>{ <BR>$this->_songs[] = array("location"=>$location,"title"=>$title); <BR>} <BR>function getPlayList() <BR>{ <BR>return $this->_object->getPlayList($this->_songs); <BR>} <BR>} <BR>class mp3PlayListDelegation <BR>{ <BR>function getPlayList($songs) <BR>{ <BR>$aResult = array(); <BR>foreach($songs as $key=>$item) <BR>{ <BR>$path = pathinfo($item['location']); <BR>if(strtolower($item['extension']) == "mp3") <BR>{ <BR>$aResult[] = $item; <BR>} <BR>} <BR>return $aResult; <BR>} <BR>} <BR>class rmvbPlayListDelegation <BR>{ <BR>function getPlayList($songs) <BR>{ <BR>$aResult = array(); <BR>foreach($songs as $key=>$item) <BR>{ <BR>$path = pathinfo($item['location']); <BR>if(strtolower($item['extension']) == "rmvb") <BR>{ <BR>$aResult[] = $item; <BR>} <BR>} <BR>return $aResult; <BR>} <BR>} <BR>$oMP3PlayList = new PlayList("mp3"); <BR>$oMP3PlayList->getPlayList(); <BR>$oRMVBPlayList = new PlayList("rmvb"); <BR>$oRMVBPlayList->get<b style="color:transparent">本文来源gao@!dai!ma.com搞$$代^@码!网!</b><strong>搞gaodaima代码</strong>PlayList(); <BR>?> <BR>