仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1485|回复: 19
打印 上一主题 下一主题

[学习教程] PHP教程之FleaPHP 开辟指南 - 4. 定名标准和目次...

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-4 00:11:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
最近陆续的有人问我学习php的心得,现在整理为下面,希望可以对大家有些帮助。标准|开辟指南   FleaPHP 的定名划定规矩和目次布局初看上去对照庞杂,但习气今后,你会发明这类定名划定规矩带来很多优点。因而像 Zend Framework 也是采取一样的做法。
固然,FleaPHP 关于使用法式的定名划定规矩和目次布局没有强迫性请求。只不外采取分歧的定名划定规矩和目次布局,可以便利对使用法式保护。同时 FleaPHP 使用法式开辟者之间也能够更轻易的停止协作。

全局函数的定名划定规矩

全局函数的定名划定规矩是用“_”分隔全小写的单词。例如 get_cache()、echo_h()。同时,函数的名字采取“动词+宾语”的模式。例如 write(动词)_cache(宾语)。
不外有些全局函数为了和 PHP 中已有的相似函数坚持分歧,采取了分歧的定名体例(特地埋怨一下,PHP 本身的全局函数定名对照凌乱,各类模式的都有)。

类的定名划定规矩

一切 FleaPHP 自带的类,都以 FLEA_ 开首。然后依据用处定名。例如 FLEA_Controller_Action、FLEA_Helper_ImgCode。然后将类名字中的“_”交换为目次分隔符,就是这个类的界说文件地点地位。
举例:
FLEA_Controller_Action 类,保留文件为 FLEA/Controller/Action.php
FLEA_Db_TableDataGateway 类,保留文件为 FLEA/Db/TableDataGateway.php
这类定名划定规矩和目次布局的优弱点以下:
长处:

  • 防止定名抵触
  • 依据类名字就可以找到文件寄存地位
  • 使用法式中可使用 FleaPHP 的 import()、load_class() 函数便利的载入类界说文件
  • 假如利用 PHP5,可以很便利的用 __autoload() 来主动载入需求的类界说:
  1. <?phpfunction __autoload($className) { load_class($className);}?>
复制代码
弱点:

  • 类名字较长,方便于输出,例如 FLEA_Com_RBAC_UsersManager
  • 或许和现有习气分歧,需求工夫来顺应
关于第一个弱点,利用 Zend Development Environment 或 Eclipse 如许的 IDE 可以减缓。这些 IDE 供应壮大的输出主动完胜利能,凡是输出类名字的开首几个字母,就会显示候选列表闪开发者选择。

变量和常量定名

在 FleaPHP 中,变量分为全局变量、一时变量和模版变量三类。

  • 全局变量和常量 全局变量和常量都利用全大写,以“_”分隔。例如 $GLOBALS['CLASS_PATH'] 和 FLEA_DIR。不外 FleaPHP 中尽可能防止了利用全局变量和常量,因而普通来讲不会和使用法式发生抵触。
  • 一时变量 函数、类办法中利用的变量都是一时变量,定名划定规矩是第一个单词小写,后续的单词第一个字母大写。例如 $requestFilters、$dispatcherClass 等。
  • 模版变量 之所以要把模版变量独自列出来,是由于分歧的模版引擎对变量名有分歧的标准。从我团体来讲,我偏向于模版变量利用全小写单词,并以“_”分隔,例如 $latest_products_list。如许在法式外面一眼就可以看出哪些变量是用于模版的。

FleaPHP 的目次布局

一个典范的 FleaPHP 使用法式具有以下的目次布局:

                               
登录/注册后可看大图
这个使用法式的目次次要分为 WebLibs 和 WebRoot。个中 WebLibs 保留法式的一切代码,而 WebRoot 目次下只保留用户可以会见的局部,例如 index.php 进口文件、图片、CSS 款式表和 JS 剧本。
WebLibs 下又分为 FLEA 和 YORK 两个目次。FLEA 目次保留 FleaPHP 的中心文件,而 YORK 目次保留使用法式的代码。之所以取名 YORK,是由于这个项目标公司名为 YORK。所以开辟者在计划目次布局时,可以参照这类体例,为保留使用法式代码的目次取一个轻易了解的名字。
WebRoot 是保留用户利用阅读器可以直接会见的内容,因而需求修正办事器或虚拟主机设置,将网站的根目次指向 WebRoot 目次。例如 www.example.com 指向 /example/WebRoot/。
这里引见的目次布局有以下长处:
长处:

  • 代码文件放置在阅读器会见不到的中央,进步了平安性
  • 法式员和设计人员可以在分歧的目次任务,下降了产生抵触的概率
  • 目次布局更明晰,轻易了解
而次要的弱点就是需求修正办事器设置,将网站根目次指向 WebRoot 目次。而有些虚拟主机不答应如许做,或需求接洽办事器办理员,对照费事。
关于这类目次布局,放置在 WebRoot 中的 index.php 进口文件应当明白挪用 import() 将 WebLibs 目次添加到类界说搜刮途径中。不然 load_class() 会找不到需求的文件。
  1. <?phprequire('../WebLibs/FLEA/FLEA.php');import('../WebLibs/YORK/');....run();?>
复制代码
关于虚拟主机用户,可以将 WebLibs 目次挪动到 WebRoot 目次中。构成以下的目次布局:

                               
登录/注册后可看大图
上图中,一切文件都保留在使用法式的根目次 cdhlss 中,而代码文件保留在 libs 子目次中。个中 libs/APP 保留使用法式的代码。
响应的 index.php 需求修正为:
  1. <?phprequire('libs/FLEA/FLEA.php');import('libs/APP/');....run();?>
复制代码
在实践开辟中,因为 FleaPHP 并没有强迫请求定名标准和目次布局。所以开辟者可以持续沿用本人熟习的体例来开辟使用法式。

PHP成功的插入,删除,更新数据的时候,显然,你已经距离成功指日可待了。
简单生活 该用户已被删除
沙发
发表于 2015-2-4 09:54:48 | 只看该作者
曾经犯过一个很低级的错误,我在文件命名的时候用了一个横线\\\\\\\'-\\\\\\\' 号,结果找了好几个小时的错误,事实是命名的时候 是不能用横线 \\\\\\\'-\\\\\\\' 的,应该用的是下划线  \\\\\\\'_\\\\\\\' ;
admin 该用户已被删除
板凳
发表于 2015-2-6 02:25:01 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
透明 该用户已被删除
地板
发表于 2015-2-15 01:17:02 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
若天明 该用户已被删除
5#
发表于 2015-3-4 10:50:04 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
只想知道 该用户已被删除
6#
发表于 2015-3-14 13:14:31 | 只看该作者
Apache不是非得用80或者8080端口的,我刚开始安得时候就是80端口老占用,就用了个 81端口,结果照常,就是输localhost的时候,应该输入为 localhost:81
柔情似水 该用户已被删除
7#
发表于 2015-3-15 02:26:16 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
谁可相欹 该用户已被删除
8#
发表于 2015-3-17 03:10:11 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
金色的骷髅 该用户已被删除
9#
发表于 2015-3-18 21:23:08 | 只看该作者
写的比较杂,因为我也是个新手,不当至于大家多多指正。
因胸联盟 该用户已被删除
10#
发表于 2015-3-26 15:14:15 | 只看该作者
真正的方向了,如果将来要去开发团队,你一定要学好smarty ,phplib这样的模板引擎,
再见西城 该用户已被删除
11#
发表于 2015-4-6 10:38:43 | 只看该作者
在学习的过程中不能怕麻烦,不能有懒惰的思想。学习php首先应该搭建一个lamp环境或者是wamp环境。这是学习php开发的根本。虽然网络上有很多集成的环境,安装很方便,使用起来也很稳定、
兰色精灵 该用户已被删除
12#
 楼主| 发表于 2015-4-13 21:30:14 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
海妖 该用户已被删除
13#
发表于 2015-4-18 15:31:22 | 只看该作者
说点我烦的低级错误吧,曾经有次插入mysql的时间 弄了300年结果老报错,其实mysql的时间是有限制的,大概是到203X年  具体的记不清啦,囧。
第二个灵魂 该用户已被删除
14#
发表于 2015-4-26 02:12:07 | 只看该作者
学习php的目的往往是为了开发动态网站,phper就业的要求也涵盖了很多。我大致总结为:精通php和mysql
小女巫 该用户已被删除
15#
发表于 2015-4-29 06:26:34 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
爱飞 该用户已被删除
16#
发表于 2015-5-9 17:25:00 | 只看该作者
你很难利用原理去编写自己的代码。对于php来说,系统的学习我认为还是很重要的,当你有一定理解后,你可你针对某种效果研究,我想那时你不会只是复制代码的水平了。
山那边是海 该用户已被删除
17#
发表于 2015-6-20 05:02:52 | 只看该作者
这些中手常用的知识,当你把我说的这些关键字都可以熟练运用的时候,你可以选择自己
蒙在股里 该用户已被删除
18#
发表于 2015-7-11 23:20:54 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
精灵巫婆 该用户已被删除
19#
发表于 2015-7-13 08:38:41 | 只看该作者
本文当是我的笔记啦,遇到的问题随时填充
灵魂腐蚀 该用户已被删除
20#
发表于 2015-7-15 07:45:17 | 只看该作者
说php的话,首先得提一下数组,开始的时候我是最烦数组的,总是被弄的晕头转向,不过后来呢,我觉得数组里php里最强大的存储方法,所以建议新手们要学好数组。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 15:59

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表