仓酷云

标题: PHP网页编程之一步步编写PHP的Framework(六) [打印本页]

作者: 海妖    时间: 2015-2-3 23:29
标题: PHP网页编程之一步步编写PHP的Framework(六)
大部分语言的基础,不是说c有多好,而是c相对起手容易学,让你认为这个是编程语言,     
  不晓得人人注重到没有,之前咱们导入一个设置装备摆设文件是经由过程include CONFIGS_PATH . '/config.php'来做的,如许做好吗?
         不忙回覆,我可以提两个成绩:
         1. 假如这个途径上面的config.php不存在会产生甚么景象?
         2.假如我将PHP这类设置装备摆设文件修正成为xml这类设置装备摆设文件以后会产生甚么景象?
         起首,假如文件不存在,那末PHP会抛出一个正告,然而法式持续履行;设置装备摆设文件酿成xml以后,进口文件处需求编写响应的读取xml的代码,并且需求把之前的include CONFIGS_PATH . '/config.php'这句代码修正失落。
          那末有无办法可以完成设置装备摆设文件的无缝切换呢?
          在详细解说这些之前,我起首说一下工场形式,现假定:A需求购置一辆白色汽车,他直接向B(一个临盆汽车的工场)提出需求,B依照A的需求,从仓库当选取一辆适合的汽车,然后交给A。全部进程,A只是提出需求,详细汽车的拔取是由B工场来肯定的,这类体例就是工场形式。
         举个例子:
01 <?php 02 public class Factory { 03     public static function factory($whichOneToChoose) { 04         $returnVal = 'Red'; 05         switch($whichOneToChoose) { 06             case1 : 07                 $returnVal = 'Blue'; 08                 break 09             case 2 : 10                 $returnVal = 'Green'; 11                 break; 12             default : 13                 break; 14         } 15         return $returnVal; 16     } 17 }         工场形式普通都有一个静态的办法:factory担任逻辑的处置。
   
          如今咱们可以新建一个专门处置设置装备摆设文件的类:Config.php
01 <?php 02 class Config { 03     const XML = 1; 04     const INI = 2; 05     const PHP = 3; 06     public static function factory($which) { 07         switch($which) { 08             caseConfig::XML : 09                 return XmlConfig::parse(CONFIGS_PATH . '/config.xml'); 10                 break; 11             case Config::INI : 12                 return IniConfig::parse(CONFIGS_PATH . '/config.ini'); 13                 break; 14             case Config::PHP : 15                 //此处没有做文件是不是存在的剖断,你可以本人剖断一下,我只是做一个例子 16                 return include CONFIGS_PATH . '/config.php'; 17                 break; 18             default: 19                 return array(); 20                 break; 21         } 22     } 23 }
   
         假如你要将设置装备摆设文件修正成为xml这类体例,只需求在XmlConfig.php中完成便可,固然,为了复杂,我在这儿只是完成ini设置装备摆设文件的编写,xml的设置装备摆设文件你可以本人去测验考试一下,假如你想检查详细完成,可以检查Toper中的/Library/Toper/Config/XmlConfig.class.php的详细代码。
01 <?php 02 class XmlConfig { 03     public static function parse($file) { 04         if(!is_file($file)) { 05             throw new Exception('none exists xml config file'); 06         } else { 07             return parse_ini_file($file,true); 08         } 09     } 10 }          这个文件的代码是我顺手写的,不包管代码的准确性,懂得思绪便可。
PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作递归缩写。
作者: 冷月葬花魂    时间: 2015-2-3 23:40
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
作者: 飘飘悠悠    时间: 2015-2-9 07:27
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
作者: 金色的骷髅    时间: 2015-2-27 04:27
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
作者: 不帅    时间: 2015-3-8 19:58
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
作者: 分手快乐    时间: 2015-3-16 13:18
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
作者: 蒙在股里    时间: 2015-3-19 17:58
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
作者: 小妖女    时间: 2015-3-22 03:10
写js我最烦的就是 ie 和 firefox下同样的代码 结果显示的结果千差万别,还是就是最好不要用遨游去调试,因为有时候遨游是禁用js的,有可能代码是争取结果被遨游折腾的认为是代码写错。
作者: 再现理想    时间: 2015-3-23 00:58
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
作者: 莫相离    时间: 2015-3-24 22:42
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
作者: 乐观    时间: 2015-3-26 21:10
找到的的资料很多都是在论坛里的,需要注册,所以我一般没到一个论坛都注册一个id,所有的id都注册成一样的,这样下次再进来的时候就不用重复注册啦。当然有些论坛的某些资料是需要的付费的。
作者: 小女巫    时间: 2015-4-16 01:43
多看优秀程序员编写的代码,仔细理解他们解决问题的方法,对自身有很大的帮助。
作者: 深爱那片海    时间: 2015-4-24 06:01
做为1门年轻的语言,php一直很努力。
作者: 爱飞    时间: 2015-4-24 07:59
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
作者: 透明    时间: 2015-7-17 13:32
先学习php和mysql,还有css(html语言很简单)我认为现在的效果比以前的方法好。
作者: 山那边是海    时间: 2015-7-18 13:58
当留言板完成的时候,下步可以把做1个单人的blog程序,做为目标,
作者: 老尸    时间: 2015-7-21 16:42
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
作者: 若天明    时间: 2015-7-22 09:09
最后介绍一个代码出错,但是老找不到错误方法,就是 go to wc (囧),出去换换气没准回来就找到错误啦。
作者: 海妖    时间: 2015-10-3 07:46
本人接触php时间不长,算是phper中的小菜鸟一只吧。由于刚开始学的时候没有名师指,碰过不少疙瘩,呗很多小问题卡过很久,白白浪费不少宝贵的时间,在次分享一些子的学习的心得。
作者: 简单生活    时间: 2015-10-8 08:41
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2