PHP教程之PHP设计形式之拜托形式
通过这段时间的学习实践,对软件开发有了更多新的认识,不在局限于之前的片面性。当然,现在所学到的东西其实并不多,离当一个真正的程序员,还有很大的差距。 当一个对象包括庞杂独自立的,必需基于判决履行的功效性的若干局部时,最好的办法是合用基于拜托设计形式的对象。<?php /** * 示例: Web站点具有创立
MP3文件播放列表的功效
, 也具有选择以 M3U 或 PLS 格局
下载播放列表的功效
。 * 以下代码示例展现
惯例
与拜托
两种形式
完成
*/ //惯例
完成
class Playlist { private $_songs; public function __construct() { $this->_songs = array(); } public function addSong($location, $title) { $song = array("location" => $location, "title" => $title); $this->_songs[] = $song; } public function getM3U() { $m3u = "#EXTM3U\n\n"; foreach ($this->_songs as $song) { $m3u .= "#EXTINF: -1, {$song['title']}\n"; $m3u .= "{$song['location']}\n"; } return $m3u; } public function getPLS() { $pls = "]\nNumberOfEntries = ". count($this->_songs) . "\n\n"; foreach ($this->_songs as $songCount => $song) { $counter = $songCount + 1; $pls .= "File{$counter} = {$song['location']}\n"; $pls .= "Title{$counter} = {$song['title']}\n"; $pls .= "LengthP{$counter} = -1 \n\n"; } return $pls; } } $playlist = new Playlist(); $playlist->addSong("/home/aaron/music/brr.mp3", "Brr"); $playlist->addSong("/home/aaron/music/goodbye.mp3", "Goodbye"); $externalRetrievedType = "pls"; if ($externalRetrievedType == "pls") { $playlistContent =$playlist->getPLS(); } else { $playlistContent =$playlist->getM3U(); } echo $playlistContent; //拜托
形式
完成
class newPlaylist { private $_songs; private $_tyepObject; public function __construct($type) { $this->_songs = array(); $object = "{$type}Playlist"; $this->_tyepObject = new $object; } public function addSong($location, $title) { $song = array("location" => $location, "title" => $title); $this->_songs[] = $song; } public function getPlaylist() { $playlist = $this->_tyepObject->getPlaylist($this->_songs); return $playlist; } } class m3uPlaylist { public function getPlaylist($songs) { $m3u = "#EXTM3U\n\n"; foreach ($songs as $song) { $m3u .= "#EXTINF: -1, {$song['title']}\n"; $m3u .= "{$song['location']}\n"; } return $m3u; } } class plsPlaylist { public function getPlaylist($songs) { $pls = "]\nNumberOfEntries = ". count($songs) . "\n\n"; foreach ($songs as $songCount => $song) { $counter = $songCount + 1; $pls .= "File{$counter} = {$song['location']}\n"; $pls .= "Title{$counter} = {$song['title']}\n"; $pls .= "LengthP{$counter} = -1 \n\n"; } return $pls; } } $externalRetrievedType = "pls"; $playlist = new newPlaylist($externalRetrievedType); $playlist->addSong("/home/aaron/music/brr.mp3", "Brr"); $playlist->addSong("/home/aaron/music/goodbye.mp3", "Goodbye"); $playlistContent = $playlist->getPlaylist(); echo $playlistContent; ?> 数据库剧本请参照:http://www.cxybl.com/html/wlbc/Php/2011_1126_9458.html
学会了PHP,那么学其他的语言,肯定速成,反过来也一样,如果你之前学过其他的语言,那么学PHP肯定快。 实践是检验自己会不会的真理。 当然这种网站的会员费就几十块钱。 本文当是我的笔记啦,遇到的问题随时填充 至于模板嘛,各位高人一直以来就是争论不休,我一只小菜鸟就不加入战团啦,咱们新手还是多学点东西的好。 要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。 我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。 对于初学者来说不推荐去拿钱买的。当然如果一个网站你经常去用,而且里面的资料也比较有用,最好还是买个会员比较好,毕竟那些也是别人的工作成果。 不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。 有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。 这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己 写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。 本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。 遇到出错的时候,我经常把错误信息直接复制到 google的搜索栏,一般情况都是能搜到结果的,不过有时候会搜出来一大片英文的出来,这时候就得过滤一下,吧中文的弄出来,挨着式方法。 我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。 我要在声明一下:我是个菜鸟!!我对php这门优秀的语言也是知之甚少。但是我要在这里说一下php在网站开发中最常用的几个功能: 你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。 当然这种网站的会员费就几十块钱。 先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。 Ps:以上纯属原创,如有雷同,纯属巧合
页:
[1]
2