PHP代码规范
1. 介绍
1.1. 标准化的重要**
标准化问题在某些方面上让每个人头痛,让人人都觉得大家处于同样的境地。这有助于让这些建议在许多的项目中不断演进,许多公司花费了许多星期逐子字逐句的进行争论。标准化不是特殊的个人风格,它对本地改良是完全开放的。
1.2. 优点
当一个项目尝试着遵守公用的标准时,会有以下好处:
? 程序员可以了解任何代码,弄清程序的状况
?
新人可以很快的适应环境
? 防止新接触php的人出于节省时间的需要,自创一套风格并养成终生的习惯
? 防止新接触php的人一次次的犯同样的错误
? 在一致的环境下,人们可以减少犯错的机会
? 程序员们有了一致的敌人
1.3. 缺点
?
因为标准由一些不懂得php的人所制定,所以标准通常看上去很傻
? 因为标准跟我做的不一样,所以标准通常看上去很傻
? 标准降低了创造力
? 标准在长期互相合作的人群中是没有必要的
? 标准强迫太多的格式
1.4. 讨论
许多项目的经验能得出这样的结论:采用编程标准可以使项目更加顺利地完成。标准是成功的关键么?当然不。但它们可以帮助我们,而且我们需要我们能得到的所有的帮助!老实说,对一个细节标准的大部分争论主要是源自自负思想。对一个合理的标准的很少决定能被说为是缺乏技术**的话,那只是口味的原因罢了。所以,要灵活的控制自负思想,记住,任何项目都取决于团队合作的努力。
1.5. 解释
1.5.1. 标准实施
首先应该在开发小组的内部找出所有的最重要的元素,也许标准对你的状况还不够恰当。它可能已经概括了
重要的问题,也可能还有人对其中的某些问题表示强烈的反对。无论在什么情况下,只要最后顺利的话,人们将成熟的明白到这个标准是合理的,然后其他的程序员们也会发现它的合理**,并觉得带着一些保留去遵循这一标准是值得的。如果没有自愿的合作,可以制定需求:标准一定要经过代码的检验。如果没有检验的话,这个解决方案仅仅是一个建立在不精确的基础上的一大群可笑的人。
1.5.2. 认同观点
1. 这行不通;
2. 也许可行吧,但是它既不实用又无聊;
3. 这是真的,而且我也告诉过你啊;
4. 这个是我先想到的;
5. 本来就应该这样。
如果您带着否定的成见而来看待事物的话,请您保持开放的思想。你仍可以做出它是废话的结论,但是做出结论的方法就是你必须要能够接受不同的思想。请您给自己一点时间去做到它。
1.5.3. 项目的四个阶段
1. 数据库结构
2. 设计
3. 数据层
4. H
相关文档:
初学PHP的时候,我们经常被PHP的绝对路径和相对路径弄的晕头转向。路径问题经常导致include及require命令不能加载到指定的页
面,从而导致Web程序运行错误。本文将跟大家一起探讨一下PHP路径问题的常用解决方案。
下面我们先做一个个简单的示例:
上图是一个简单Web项目的结构图,其中各文件的代码如下: ......
准备:
lighttpd-1.4.15.tar.gz
php-4.4.2.tar.gz
mysql-5.0.20a.tar.gz
开始:
1 编译安装lighttpd
# tar zxvf lighttpd-1.4.15.tar.gz
# cd lighttpd-1.4.15
# ls
# ./configure --prefix=/usr/local/lighttpd //此部无法编译时提示安装prce-devel
#&nbs ......
由于公司项目的需要,最经在研究Quercus一个纯java的php引擎。项目这两个需要做的就是将该引擎裁剪,做一个相对安全的版本,提供给ISV使用,同时,在引擎中提供默认的接口供调用。所以先研究了一下,在Quercus引擎的支持下,PHP如何与java集成。
以下是学习到的几点:
1、如果使用 Resin-IoC/WebBeans来组织应用的服 ......
/ ok
header('HTTP/1.1 200 OK');
//设置一个404头:
header('HTTP/1.1 404 Not Found');
//设置地址被永久的重定向
header('HTTP/1.1 301 Moved Permanently');
//转到一个新地址
header('Location: http://www.example.org/'
);
//文件延迟转向:
header('Refresh: 10; url=http://www.example.org/');
print 'Y ......
<?php
/*****************
名称:validator For PHP v1.0.0
日期:2006-12-7
作者:西楼冷月
网址:www.xilou.net | www.chinaCMS.org
描述:数据检验类,用在表单验证上
规则:无
*****************/
/*php自身的检测函数
*bool is_numeric ( mixed var)
*bool is_bool ( mixed var)
*bool is_null ( mixed ......