工厂模式小案例

原创 2019-01-07 09:35:28 312
摘要:<?php class Mp3{ public function music() { return '可以放音乐'; } }class Mp4{ public function vedio() { return '可以放视频'; }}class Factory{ public static function cerate($className)

<?php 

class Mp3

{

public function music()

{

return '可以放音乐';

}


}


class Mp4

{

public function vedio()

{

return '可以放视频';

}

}



class Factory

{

public static function cerate($className)

{

switch ($className) {

case 'Mp3':

return new Mp3;

break;

case 'Mp4':

return new Mp4;

break;

}

}

}

class student

{

public function play()

{

$Mp3 = Factory ::cerate('Mp3');

return 'Mp3'.$Mp3->music();


}

public function play2()

{

$Mp4 = Factory ::cerate('Mp4');

return 'Mp4'.$Mp4->vedio();


}

}

$student = new student;

echo $student->play();

echo "<br>";

echo $student->play2();


发布手记

热门词条