仓酷云

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

[学习教程] PHP网站制作之PHP网站代码编写标准

[复制链接]
爱飞 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-2-3 23:51:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
怎么培养啊 别光说不练啊,好 ,比如新人入门自己步是配置环境,虽然现在都有很多的集成环境,但是真实的体验下配置环境还是会有很多帮助,不论是你以后工作还是在真实的linux下开发。PHP网站代码编写标准   1、 变量定名

a) 一切字母都利用小写
b) 首字母依据变量值类型指定
i. 整数i
ii. 浮点数f
iii. 字符串s
iv. 布尔值b
v. 数组a
vi. 对象o
vii. 资本r
viii. 夹杂类型m
c) 利用’_’作为每个词的分界
例如:
$i_age_max = 10;
$f_price = 22.5;
$s_name =‘harry’;
$b_flag = true;
$a_price = array();
$o_object = new class();
$r_file = fopen();
$m_var = array_combine($a_name, $a_flag);
  
2、 类定名

a) 利用大写字母作为词的分隔,其他的字母均利用小写,即驼峰格局。
b) 名字的首字母利用大写
c) 不要利用下划线(’_')
d) interface接口最好利用大写字母I,并以Interface开头
例如:
class NameOneTwo
class Name
interface IExampleInterface ()
3、 办法定名

a) 利用大写字母作为词的分隔,其他的字母均利用小写
b) 名字的首字母利用大写,声明为 “private” 或 “protected” 的,利用’_’为前缀
c) 不要利用下划线(’_')
d) (与类定名分歧的划定规矩)
e) 对象的会见器老是以 “get” 或 “set” 为前缀,当利用设计形式如 单态形式(singleton)或工场形式(factory),办法的名字应该包括形式的名字,如许轻易从名字辨认设计形式。
例如:
class NameOneTwo{
public function DoIt() {};
protect function _HandleError() {};
private function _SayHello() {};
}
4、 类属人命名

a) 属性名前缀应以属性值类型指定(详细参照变量定名划定规矩)
b) 前缀后采取与类定名分歧的划定规矩
c) 公有属性采取’_’为前缀
例如:
class NameOneTwo {
public function VarAbc() {};
public function ErrorNumber() {};
public $iAge;
private $_iAge;
}
5、 办法中参数定名

a) 参照类属人命名
例如:
class NameOneTwo {
public function VarAbc($sMsg) {};
}
6、 全局变量

a) 全局变量应当带前缀‘g’
b) 其他参照变量定名划定规矩
例如:
global $gi_Age;
global $ga_Price
7、 界说定名/全局常量

a) 全局常量利用’_’朋分每一个单词
b) 一切字母利用大写
例如:
define(‘E_ERROR_MISSING_PARA’, 501);
8、 函数

a) 一切的字母采取小写,利用’_’朋分每一个单词
例如:
function some_bloody_function(){
}
9、 大括号{}划定规矩

a) 将大括号放置关头词下方的同列处或同业,保举放到同业
例如:
function some_bloody_function() {
}
if (true) {
// code
}
10、 缩进/制表符划定规矩

a) 利用制表符缩进
例如:
function some_bloody_function() {
if (true) {
//code
}
}
11、 小括号、关头词和函数划定规矩

a) 不要把小括号和关头词紧贴在一同,要用空格离隔它们
b) 小括号和函数名要紧贴在一同
c) 除非需要,不要在Return前往语句中利用小括号
例如:
if (condition) {
}
strcmp($sHello, $sEvening);
return 1;
12、 If Then Else格局

结构
if (前提1) { //正文
}
else if (前提2) { //正文
}
else { //正文
}
假如你有效到else if语句的话,凡是最好有一个else块以用于处置未处置到的其他情形。可以的话放一个纪录信息正文在else处,即便在else没有任何的举措。
前提格局
老是将恒量放在等号/不等号的右边,例如:
if ( 6 == $errorNum ) …
一个缘由是假设你在等式中漏了一个等号,语法反省器会为你报错。第二个缘由是你能立即找到数值,而不是在你的表达式的末尾找到它。需求一点工夫来习气这个格局,然而它的确很有效。
十3、 Switch格局

a) default总应当存在,它应当不被抵达,但是假如抵达了就会触发一个毛病。
b) 假如你要创建一个变量,那就把一切的代码放在块中。
例如:
switch ($numPeople) {
case 1:
break;
case 2:
break;
default:
break;
}
十4、 ?:三元运算符

a) 把前提放在括号内以使它和其他的代码相分别。
b) 假如能够的话,举措可以用复杂的函数。
c) 把所做的举措,“?”,“:”放在分歧的行,除非他们可以清晰的放在统一行。
例如
(condition) ? funct1() : func2();
(condition)
? long statement
: another long statement;
十5、 代码块的声明

a) 声明朝码块需求对齐。
例如
$iDate = 0;
$irDate = NULL;
$sName = ‘’;
$mName = NULL;
十6、 不要采取缺省办法测试非零值

不要采取缺省值测试非零值,也就是利用:
if (FAIL != f())
比上面的办法好:
if (f())
即便FAIL可以含有0值,也就是PHP以为false的暗示。在或人决意用-1取代0作为掉败前往值的时分,一个显式的测试就能够匡助你了。就算是对照值不会变更也应当利用显式的对照;
例如:if (!($bufsize % strlen($str)))应当写成:if (($bufsize % strlen($str)) == 0)以暗示测试的数值(不是布尔)型。一个常常出成绩的中央就是利用strcmp来测试一个字符等式,了局永久也不会等于缺省值。
非零测试采取基于缺省值的做法,那末其他函数或表达式就会遭到以下的限制:
只能前往0暗示掉败,不克不及为/有其他的值。
定名以便让一个真(true)的前往值是相对明显的,挪用函数IsValid()而不是Checkvalid()。
十7、PHP正文与办法解析

a) //单行正文
b) 第二种
/*
* 多行正文…
*
*/
c) 第三种
/**
* 多行文档正文…
*
*/
d) 关于文档正文的申明
/**
* 这是一个关于函数的正文 …
*
*/
function bac(){}
/*
* 这不是一个文档正文,由于不是以/**开首 …
*
*/
function bac(){}
/**
* 这是一个文档正文,但与函数有关,由于他没放到函数后面 …
*
*/
function bac(){}
e) 文档申明
/**
* 文件申明
* @author 作者
* @license License
* @version 1.0
* @link
* @final
*/
保举写完代码后用ZendStudio从头格局化一次代码,明晰
当然你可以把你最基本的功能放出来的时候就放出来,比如放到论坛上,让大家都参与,
第二个灵魂 该用户已被删除
沙发
发表于 2015-2-4 06:35:22 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
谁可相欹 该用户已被删除
板凳
发表于 2015-2-9 17:46:31 | 只看该作者
php是动态网站开发的优秀语言,在学习的时候万万不能冒进。在系统的学习前,我认为不应该只是追求实现某种效果,因为即使你复制他人的代码调试成功,实现了你所期望的效果,你也不了解其中的原理。
飘飘悠悠 该用户已被删除
地板
发表于 2015-2-21 20:42:57 | 只看该作者
使用zendstdio 写代码的的时候,把tab 的缩进设置成4个空格是很有必要的
分手快乐 该用户已被删除
5#
发表于 2015-3-2 20:25:01 | 只看该作者
为了以后维护的方便最好是代码上都加上注释,“予人方便,自己方便”。此外开发文档什么的最好都弄齐全。我觉得这是程序员必备的素质。虽然会消耗点很多的时间。但是确实是非常有必要的。
小妖女 该用户已被删除
6#
发表于 2015-3-11 06:00:36 | 只看该作者
,熟悉html,能用div+css,还有javascript,优先考虑linux。我在开始学习的时候,就想把这些知识一起学习,我天真的认为同时学习能够互相呼应,因为知识是相通的。
精灵巫婆 该用户已被删除
7#
发表于 2015-3-17 22:04:18 | 只看该作者
不禁又想起那些说php是草根语言的人,为什么认得差距这么大呢。
愤怒的大鸟 该用户已被删除
8#
发表于 2015-3-24 22:08:32 | 只看该作者
兴趣是最好的老师,百度是最好的词典。
灵魂腐蚀 该用户已被删除
9#
发表于 2015-3-25 09:26:03 | 只看该作者
我学习了一段时间后,我发现效果并不好(估计是我自身的问题)。因为一个人的精力总是有限的,同时学习这么多,会导致每个的学习时间都得不到保证。
若相依 该用户已被删除
10#
发表于 2015-4-22 00:00:52 | 只看该作者
实践是检验自己会不会的真理。
爱飞 该用户已被删除
11#
 楼主| 发表于 2015-4-30 02:43:12 | 只看该作者
建数据库表的时候,int型要输入长度的,其实是个摆设的输入几位都没影响的,只要大于4就行,囧。
乐观 该用户已被删除
12#
发表于 2015-5-1 00:09:20 | 只看该作者
Ps:以上纯属原创,如有雷同,纯属巧合
再现理想 该用户已被删除
13#
发表于 2015-5-5 09:27:43 | 只看该作者
有时候汉字的空格也能导致页面出错,所以在写代码的时候,要输入空格最好用引文模式。
海妖 该用户已被删除
14#
发表于 2015-5-5 10:55:36 | 只看该作者
首推的搜索引擎当然是Google大神,其次我比较喜欢 百度知道。不过搜出来的结果往往都是 大家copy来copy去的,运气的的概率很大。
因胸联盟 该用户已被删除
15#
发表于 2015-6-14 21:22:18 | 只看该作者
装在C盘下面可以利用windows的ghost功能可以还原回来(顺便当做是重转啦),当然啦我的编译目录要放在别的盘下,不然自己的劳动成果就悲剧啦。
活着的死人 该用户已被删除
16#
发表于 2015-6-28 13:56:32 | 只看该作者
我还是推荐用firefox ,配上firebug 插件调试js能省下不受时间。谷歌的浏览器最好也不少用,因为谷歌的大侠们实在是太天才啦,把一些原来的js代码加了一些特效。
莫相离 该用户已被删除
17#
发表于 2015-7-7 11:07:58 | 只看该作者
要进行开发,搭建环境是首先需要做的事,windows下面我习惯把环境那个安装在C盘下面,因为我配的环境经常出现诡异事件,什么事都没做环境有的时候就不能用啦。
山那边是海 该用户已被删除
18#
发表于 2015-7-7 11:50:31 | 只看该作者
做为1门年轻的语言,php一直很努力。
飘灵儿 该用户已被删除
19#
发表于 2015-7-9 22:04:44 | 只看该作者
如果你可以写完像留言板这样的程序,那么你可以去一些别人的代码了,
冷月葬花魂 该用户已被删除
20#
发表于 2015-7-10 13:36:06 | 只看该作者
个人呢觉得,配wamp 最容易漏的一步就是忘了把$PHP$目录下的libmysql.dll拷贝到windows系统目录的system32目录下,还有重启apache。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-29 23:04

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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