作业帮 > 字数作文 > 教育资讯

php网吧终结大师

来源:学生作业帮助网 编辑:作业帮 时间:2024/09/24 15:23:17 字数作文
php网吧终结大师字数作文

篇一:10位顶级PHP大师的开发原则

10位顶级PHP大师的开发原则

在WEB开发世界里,PHP是最流行的语言之一,从PHP里,你能够很容易的找到你所需的脚本,遗憾的是,很少人会去用“最佳做法”去写一个PHP程序。这里,我们向大家介绍PHP的10种最佳实践,当然,每一种都是经过大师们证明而得出的。

1. 在合适的时候使用PHP – Rasmus Lerdorf

没有谁比PHP的创建者Rasmus Lerdorf明白PHP用在什么地方是更合理的,他于1995年发布了PHP这门语言,从那时起,PHP就像燎原之火,烧遍了整个开发阵营,改变了互联网的世界。可是,Rasmus并不是因此而创建PHP的。PHP是为了解决WEB开发者的实际问题而诞生的。

和许多开源项目一样,PHP变得流行,流行的动机并不能用正常的哲学来进行解释,甚至流行得有些孤芳自赏。它完全可以作为一个案例,一个解决各种Web问题的工具需求所引起的案例,因此当PHP刚出现的时候,这种工具需求全部聚焦到PHP的身上。

但是,你不能奢望PHP可以解决所有问题。Lerdorf是第一个承认PHP只是一种工具的人,并且PHP也有很多力所不能及的情况。

根据工作的不同来选择合适的工具。我跑了很多家公司,为了说服他们部署和使用PHP,但是这并不意味着PHP对所有问题都适用。它只是可以一个解决大部分问题的front-end脚步语言。

作为一个web开发者,尝试用PHP解决所有问题是不科学的,同时也会浪费你的时间。当PHP玩不转的时候,不要犹豫,试用一下其他的语言吧。

2. 使用多表存储提高规模伸缩性 – Matt Mullenweg

没有人愿意质疑Matt Mullenweg在PHP方面的权威性,他开发了这个星球上最流行的blog系统,(依靠一个强大的社区力量支持): WordPress. 创建Wordpress以后,Matt和他的团队启动了WordPress.com平台,一个基于WordPress MU的免费blog站点。现在,Wordpress.com已经拥有大约400万用户, 这些用户每天提供超过 140,000篇的日志。 (要查看更多Wordpress.com的统计情况,请点击这里.)

如果有人知道如何让网站的规模伸缩自如,这个人一定是Matt Mullenweg。2006年的时候 Matt对Wordpress的数据结构进行了前瞻性的改进,并且解释了为什么Wordpress MU对每个blog使用独立的MYSQL表格, 而不是把所有的blog数据都塞进一个巨大的表格。

我们测试过这个方法,但是发现如果要扩展它的伸缩性,代价太高。如果用一个整体的数据结构,在大流量面前,你将会面临服务器硬件的问题。在MU里面。用户们都被分布到独立的表格当中,并且可以轻易地组织起来。举个例子,WordPress.com把用户的数据分散存储到4096个数据库中,这些数据库可以分散大规模的数据访问,实现流量和压力分流。

数据表的可迁移性让代码(blog)可以运行得更快,并且让系统具备更强的伸缩性。依靠强大的缓存策略和灵活的数据库运用策略, Matt向人们展示了时下最流行的Facebook和Wordpress.com都可以在PHP下稳定运行,并且处理惊人的访问量。

3. 千万不要相信用户 – Dave Child

Dave Child是Added Bytes (previously ilovejackdaniels.com) 网站的核心人物,这个网站以他出色的《cheat sheets for many programming languages》而闻名。 Dave为很多英国的公司服务,并且已经在编程世界里树立起相当的权威。

Dave为PHP开发者提供了很多深谋远虑的建议,并总结成了《writing secure code in PHP》:千万不要相信你的用户,他们甚至可能会伤害你。

有一条web开发的基本原则,我重复多少遍都觉得不够,那就是:千万不要相信你的用户,同时要假设你网站中的每个数据单元都是从用户那里收集来的恶意代码。很多时候,你必须用JAVAscript在客户端检验表单提交过来的内容, 如果你习惯了如此,那么,这是一个好习惯。如果安全性对你来说很重要,这就是最重要最需要学习的原则。

Dave目前正致力于为它的《Writing Secure PHP》系列书籍整理实例,书的最后他说:

最后,变得偏执一点吧。除非你认为你的站点永远不会受到攻击,否则就正视所有的问题,当问题真正发生的时候,你的情况会变得很糟。你需要把每个用户都看成会带来一场攻防站的黑客,想尽一切办法来保护站点的安全,同时想好相应问题的解决方案。

4. 多使用PHP缓存 – Ben Balbo

Ben Balbo开发了Site Point,一个为developers和designers提供指导的网站。他是墨尔本PHP开发和开源俱乐部的成员, 因此他对PHP有一定的了解,同时对PHP caching有一定的想法和经验。

如果你拥有一个访问量很大,但更新并不频繁的站点(比如blog,基于某种CMS),或许它需要进行一些改造,这些改造不会花费太多的时间,但是对性能有

www.accpbj.com

突出的贡献。 如果要为一个复杂/更新频率很快的站点建立缓存机制,过程可能会很曲折,但是好处也是显而易见的。

PHP缓存技术有很多种,Ben为我们推荐了如下一些:

◆缓存函数的运行结果

◆设置过期时间

◆缓存IE下载的文件

◆模板缓存技术

◆Cache_Lite

由于PHP作为动态语言的特性,缓存机制对于更新频率并不快的站点来说非常重要。

5. 使用IDE, Templates和Snippets加速PHP开发 – Chad Kieffer

当Chad Kieffer从UI设计和数据库优化的工作中抽身出来的时候,他会在他的博客2 tablespoons上分享很多技术经验。由于Chad多方面的全面发展,他经常可以发现其他程序员不能发现的问题,并形成相关经验,尤其是他开发网站的方法。他参与了网站开发的各个环节,因此他的建议对于提高网站开发的大局观非常有用。

Chad认为使用Eclipse PDT(Eclipse’s PHP development package) 这样的IDE,同时使用一些模板技术和开源项目可以有效地提高PHP的开发速度。

紧凑的计划,长长的to do lists以及deadlines让开发人员非常苦闷。不过有些功能,比如Eclipse Templates,可以有效减少编码的时间和出错的几率。

通常来说,任何项目都可以自动化,自动化程度越高, 你完成项目的时间就越短。花时间来开发使用频率很高的框架和模板,将会节省你以后更多时间。同时,使用像Eclipse and the PDT package这样的IDE,你会发现效率得到明显提高,IDE可以自动闭合,补全分号并且可以在本地debug。

6. 利用好PHP的过滤函数 – Joey Sochacki

或许Joey Sochacki并不像Matt Mullenweg那样有名 ,但他也是一个经验丰富的开发者,并且通过他的博客Devolio分享了很多技术经验

Joey发现在编写php代码的过程中有很多地方需要进行过滤,但却并没有太多的coder关注php的内置过滤函数。

过滤数据是我们经常需要做的事情,但是很多功能丰富的PHP内置过滤函数却不为人知。使用类似filter_* 的PHP内置函数,我们几乎可以处理所有的过滤任务,包括数据类型验证/URL/email和IP地址验证/特殊字符处理等等。

过滤是一件复杂的事情,但是我相信joey的发现会给你很多启发,让你认识到PHP强大的过滤功能。

7. 使用PHP框架 – Josh Sharp

对于是否应该使用Zend, CakePHP, Code Igniter, 或者 其他PHP框架,一直存在着很多争议,但是在web开发者的心中,他们有自己衡量的标准。

Josh Sharp自己创建了一家提供面包和黄油服务的网站,因此他对于使用PHP框架来开发网站有一定的经验。他认为使用一个PHP框架来进行项目开发(use a PHP framework ),可以有效地节省时间,并且减少出错的几率。为什么?因为他觉得PHP实在是太好上手了。

PHP的易于使用有时候也有缺陷,因为并不严格的语法,经常会导致很多错误代码的诞生。但如果使用一个PHP框架,出错的几率就会大大减少。

PHP框架可以让你的代码结构更加规范,并且节省大量时间。

8. 不要使用PHP框架 – Rasmus Lerdorf

与Josh的观点恰恰相反,PHP的鼻祖Rasmus Lerdorf却认为最好不要使用PHP框架,为什么?因为不基于框架的PHP性能更好。Rasmus在Drupalcon 2008的演讲上,用“Hello World”的例子来对比了一些框架PHP和简单PHP之间的性能,结果显示框架PHP的性能要远远落后。

9. 使用批处理 – Jack D. Herrington

Jack Herrington对PHP世界并不陌生, 并且为大名鼎鼎的IBM developerWorks贡献过超过30篇的专搞, 同时出版过《PHP Hacks》的书,因此他是一个真正的专家。

Herrington推荐使用批处理和Cron来代替那些可以运行在后台的程序脚步,Web用户并不愿意在线等待你的处理过程,所以有些事情更适合放到后台来处理。

诚然,在某些情况下,这有点大材小用了,但是你可以清楚地看到,使用Cron, MySQL, PHP面向对象的方法以及Pear::DB这些便捷的工具来创建一个批处理工具并不是一件复杂的事情。

Jack认为使用cron, PHP和MySQL在后台处理一些任务,比起多进程的业务逻

辑要划算得多。

两种方法我都尝试过,我认为Cron非常符合”Keep It Simple, Stupid” (KISS) 的原则,它让后台处理变得简单。与多进程的业务逻辑相比,它没有内存溢出的风险。你可以创建一个简单的批处理脚本,并且在cron中运行,这个脚本会定时检查是否有任务需要处理,处理完之后就会自动退出,因此你不用担心是否有进程卡壳,或者陷入死循环。

10. 及时启用错误报告 – David Cummings

David Cummings有一个专门提供CMS软件服务的公司 ,并且获得过几次奖 ,他有非常丰富的PHP开发经验。David曾经写过《two PHP tips he wished he’d learned in the beginning》,其中一点就是:及时启用错误报告,这会节省大量的时间。

我告诉人们,最重要的事情就是最大程度地开启PHP的错误报告,为什么?因为PHP可能会隐藏很多小问题:

◆变量没有预定义

◆在代码片段中引用了不可用的变量

php网吧终结大师

◆使用了未定义的常量这些因素看起来并不是什么大事,除非你在使用面向对象的方法编写一些类库。通常,关闭错误报告将可能使你付出更大的成本来维护你的代码。

错误报告可以帮你轻易地找到代码的问题所在,如果错误报告的等级够高,细微的错误都能被立即发现,帮助你节省整体debug的时间。

(ps:本文章由北大青鸟广安门校区搜集自互联网)

篇二:配置LAMP(终结)

centos 6.3 编译安装配置LAMP

一、准备工作

1. 理论准备

为什么要用编译的方式来安装配置LAMP,而不选用yum或者集成包的方式?

2. 环境准备

? 关闭防火墙 service iptables stop

? 关闭selinux vim /etc/selinux/config---disabled---reboot

? 安装gcc、gcc-c++、make yum install gcc* make

? 卸载apache、php、mysql yum remove mysql php htttpd

(这里我检查的都是rpm版本的软件是否安装,你们已经用tar安装过一次mysql、httpd,我的建议是你们把安装目录删除或者还原快照)

这里我检查、卸载的对象都是rpm版本的软件,对于tar版本的软件的卸载,需要删除软件安装目录。

? 查看残留进程

在使用tar安装mysql httpd php,必须首先卸载使用rpm所安装的软件。原因是mysql使用的端口是3306,如果已经使用rpm安装了mysql,就会占用3306端口,再安装tar的mysql就会端口冲突导致安装失败!!! 另外,如果已经使用rpm安装了mysql,后面又使用tar安装mysql,那么再使用service mysqld start启动mysql的时候,就不清楚到底启动的是rpm的mysql还是tar的mysql,导致系统混乱。

rpm 安装的软件卸载 rpm -e xxxxx

tar 安装的软件卸载 删除那个安装目录就可以了

3. 软件准备

建议采用集中管理软件的方式来管理软件包。这里我把所有的软件包统一放在/home/download下,软件的安装位置统一为/usr/local/xxxx/

用到的软包如下

二、配置过程

1. 安装libxml2

2. 安装libmcrypt

在编译安装完成后,注意,在libmcrypt下有个工具libltdl,我们可以安装一下这个工具,首先进入到这个目录下,然后同样执行编译安装过程

然后执行编译和安装

注意: 如果不知道此选项怎么来用,或者换了版本以后,不会用了,可以用--help查找信息

3. 安装zlib

注意:安装zlib是一个比较容易出现问题的部分,经常有人遇见在后续的安装过程中提示找不到zlib库,这里我的建议是安装zlib的时候不要指定安装位置,保持默认安装。

提示:

如果在安装tar包的时候,指定安装位置,那么卸载tar包只需要删除那个安装目录就可以了;但是没有指定安装位置的时候怎么卸载呢?注意看执行make install的步骤

? 这里就很清楚的告诉了我们在安装的过程中,都进行了哪些操作,如果要删除软件,

只需要把执行过程是创建的那些文件删除就可以了。

? 如果怕不知道安装过程中都生成哪些文件,就可以用make

install >zx_install_zlib.log,那么就可以随时看安装过程中生成的文件。

4. 安装libpng 如果上一步在安装zlib的时候指定了安装位置,那么这里很可能提示找不到lib库。 另外,如果不需要显示png的图片,就可以不安装此包。

5. 安装jpeg-6b

这个包的安装也较为特殊,需要首先创建安装所需要的目录,因为这些目录不能自动创建。

一般命令的帮助是man1、配置文件的帮助是man5 6. 安装freetype

7. 安装autoconf 这个也不要指定安装目录

8. 安装gd库 gd库是需要安装的最后一个库,也是最容易出问题的一个。这里就需要用到前面的几

个几个库文件了。

? 指定字体库文件freetype的位置

9. 安装httpd

? –prefix=/usr/local/apache2 //体系无关文件的顶级安装目录PREFIX ,也就Apache

的安装目录。

? –enable-module=so //打开 so 模块,so 模块是用来提 DSO 支持的apache 核心

模块

? –enable-deflate=shared //支持网页压缩

? –enable-expires=shared //支持 HTTP 控制

? –enable-rewrite=shared //支持 URL 重写

? –enable-cache //支持缓存

? –enable-file-cache //支持文件缓存

? –enable-mem-cache //支持记忆缓存

? –enable-disk-cache //支持磁盘缓存

? –enable-static-support //支持静态连接(默认为动态连接)

? –enable-static-htpasswd //使用静态连接编译 htpasswd – 管理用于基本认证的用

户文件

? –enable-static-htdigest //使用静态连接编译 htdigest – 管理用于摘要认证的用户文

篇三:PSP终结者教你在网吧抢网速

原创:教你如何在网吧内抢网速!

2010-12-30 18:45:03| 分类: 默认分类|字号 订阅

⑴ 打开网页,复制右边的地址到地址栏 http://dl.pconline.com.cn/html_2/1/86/id=10660&pn=0&linkPage=1.html

⑵ 下载文件. 打开文件

⑶ 接下来用图片说明.照着图片上的去做就可以了!!!

⑷最近发现

.有些电脑的网卡不能初始化.所以无法启动底层引擎.这个问题.比较难解决)

篇四:适合新手大师级的韩顺平PHP全套笔记

韩顺平php入门到精通全套笔记

整理了好长时间终于全了,分享给大家(2013年03月 14日)

1讲 html介绍 html运行原理①

Html + css 四天

Html是什么

1. html (hypertext mark-uplanguage)是 超文本标记语言, 主要的用处是做网页, 可以在网页上显示 文字、图像、视频、声音…

? 标记==元素

简单说明一下动态网页的示意图

:

Html历史

1999 html-- xhtml (xhtml 可以理解成就是html的加强版) -

|

2008 html5.0

u W3c的介绍

是一个制定标准的组织 ( 比如 给 html ,xhtml ,css ,xml , wml…制定标准)

? 不同的浏览器,去访问同一个网页,可能看到的效果是有差别!->hack

Html的运行原理

Hello.html

Html的运行有两种方式

Html文件的基本结构

1.本地运行

所谓本地运行就是直接用 浏览器打开

23讲 动态网页技术介绍 PHP基本介绍

php核心课程

web开发的介绍

web开发分为

1. 静态web开发(html页面)

如果我们的一个页面,始终是一成不变的,则就是属于静态web开发,一般讲用html技术就ok

2. 动态web开发

比如: 我们需要发帖,网上支付, 发短信, 发邮件…. 这样就需要动态web开发. 常用的动态web技术 php 、jsp 、asp--àasp.net 、cgi 通用网关接口

c->c++->java->c#

我希望在某个页面显示当前时间

动态网页技术的发展历程

1. cgi

2. asp 微软产品 -> asp.net

3. jsp (mysql-> sun公司),被oracle2009收购 [java / solaris/mysql]

4. php 目前zend公司管理维护

php优点:

① 跨平台 ,同时支持多种数据库

② 安全性和效率好

③ 使用成本低 ( linux apache mysql php内核)

④ 相对jsp ,和 asp.net 简单

⑤ 开发源码(可以做二次开发) / 开源软件

⑥ 在php4 php5 以及即将发布php6 中更好的支持 面向对象

缺点:

1. 安装比较复杂,配置比较多

2. 太灵活,解释执行(编译执行),所以有些错误,到真的运行的时候才会暴露 Hello.c

Viod main(){

Printf(“ok”);

}

Hell.java

Main(){

System.out.println(“hello,world”);

}

Php

Echo ?hello,?

?>

2讲 html运行原理② html文件基本结构 html元素和属性

更新时间:2012年09月13日18时12分 来源:

2. 远程访问

l 何为协议? 计算机互相通信(网络)的规则. ftp smtp pop http

远程访问的原理示意图:

? 这里我们涉及到http协议,这里我们没有深入讲解, 但是这是一个非常重要的知识点.

Html的基本结构

<元素属性1=”值” …./>

<元素属性1=”属性值” 属性2=“属性值” …>内容

<元素属性=”属性值”/>

说明

1. 标记通常是成对出现

2. 单标记

案例:

Demo1.htm

横看成林

远近高低各不同

不知庐山真面目

面试: 请问后缀 html 和 htm 有什么区别?

答: 1. 如果一个网站有 index.html 和 index.htm 默认情况下,优先访问 .html

3. htm 后缀是为了兼容以前的dos 系统 8.3的命名规范

3讲 符号实体 url说明 超链接 发送电邮

更新时间:2012年09月13日18时13分 来源:

html符号实体

篇五:php学习10位大师经验

导读:在Web开发世界里,PHP是最流行的语言之一,从PHP里,你能够很容易的找到你所需的脚本,遗憾的是,很少人会去用“最佳做法”去写一个PHP程序。这里,我们向大家介绍PHP的10种最佳实践,当然,每一种都是经过大师们证明而得出的。

1. 在合适的时候使用PHP——Rasmus Lerdorf

没有谁比PHP的创建者Rasmus Lerdorf明白PHP用在什么地方是更合理的,他于1995年发布了PHP这门语言,从那时起,PHP就像燎原之火,烧遍了整个开发阵营,改变了互联网的世界。可是,Rasmus并不是因此而创建PHP的。PHP是为了解决web开发者的实际问题而诞生的。

和许多开源项目一样,PHP变得流行,流行的动机并不能用正常的哲学来进行解释,甚至流行得有些?a href="http://www.zw2.cn/zhuanti/guanyuluzuowen/" target="_blank" class="keylink">路甲陨汀K耆梢宰魑桓霭咐桓鼋饩龈髦諻eb问题的工具需求所引起的案例,因此当PHP刚出现的时候,这种工具需求全部聚焦到PHP的身上。

但是,你不能奢望PHP可以解决所有问题。Lerdorf是第一个承认PHP只是一种工具的人,并且PHP也有很多力所不能及的情况。

根据工作的不同来选择合适的工具。我跑了很多家公司,为了说服他们部署和使用PHP,但是这并不意味着PHP对所有问题都适用。它只是可以一个解决大部分问题的front-end脚步语言。

作为一个web开发者,尝试用PHP解决所有问题是不科学的,同时也会浪费你的时间。当PHP玩不转的时候,不要犹豫,试用一下其他的语言吧。

2. 使用多表存储提高规模伸缩性——Matt Mullenweg

没有人愿意质疑Matt Mullenweg在PHP方面的权威性,他开发了这个星球上最流行的blog系统,(依靠一个强大的社区力量支持): WordPress.创建Wordpress以后,Matt和他的团队启动了WordPress.com平台,一个基于WordPress MU的免费blog站点。现在,Wordpress.com已经拥有大约400万用户, 这些用户每天提供超过 140,000篇的日志。

如果有人知道如何让网站的规模伸缩自如,这个人一定是Matt Mullenweg。2006年的时候Matt对Wordpress的数据结构进行了前瞻性的改进,并且解释了为什么

Wordpress MU对每个Blog使用独立的MYSQL表格, 而不是把所有的blog数据都塞进一个巨大的表格。

我们测试过这个方法,但是发现如果要扩展它的伸缩性,代价太高。如果用一个整体的数据结构,在大流量面前,你将会面临服务器硬件的问题。在MU里面。用户们都被分布到独立的表格当中,并且可以轻易地组织起来。举个例子,WordPress.com把用户的数据分散存储到4096个数据库中,这些数据库可以分散大规模的数据访问,实现流量和压力分流。

数据表的可迁移性让代码(blog)可以运行得更快,并且让系统具备更强的伸缩性。依靠强大的缓存策略和灵活的数据库运用策略, Matt向人们展示了时下最流行的Facebook和Wordpress.com都可以在PHP下稳定运行,并且处理惊人的访问量。

3. 千万不要相信用户——Dave Child

Dave Child是Added Bytes(previously ilovejackdaniels.com)网站的核心人物,这个网站以他出色的《cheat sheets for many programming languages》而闻名。Dave为很多英国的公司服务,并且已经在编程世界里树立起相当的权威。

Dave为PHP开发者提供了很多深谋远虑的建议,并总结成了《writing secure code in PHP》:千万不要相信你的用户,他们甚至可能会伤害你。

有一条Web开发的基本原则,我重复多少遍都觉得不够,那就是:千万不要相信你的用户,同时要假设你网站中的每个数据单元都是从用户那里收集来的恶意代码。很多时候,你必须用javascript在客户端检验表单提交过来的内容, 如果你习惯了如此,那么,这是一个好习惯。如果安全性对你来说很重要,这就是最重要最需要学习的原则。

Dave目前正致力于为它的《Writing Secure PHP》系列书籍整理实例,书的最后他说:

最后,变得偏执一点吧。除非你认为你的站点永远不会受到攻击,否则就正视所有的问题,当问题真正发生的时候,你的情况会变得很糟。你需要把每个用户都看成会带来一场攻防站的黑客,想尽一切办法来保护站点的安全,同时想好相应问题的解决方案。

4. 多使用PHP缓存——Ben Balbo

Ben Balbo开发了Site Point,一个为developers和designers提供指导的网站。他是墨尔本PHP开发和开源俱乐部的成员, 因此他对PHP有一定的了解,同时对PHP caching有一定的想法和经验。

如果你拥有一个访问量很大,但更新并不频繁的站点(比如blog,基于某种CMS),或许它需要进行一些改造,这些改造不会花费太多的时间,但是对性能有突出的贡献。 如果

要为一个复杂/更新频率很快的站点建立缓存机制,过程可能会很曲折,但是好处也是显而易见的。

PHP缓存技术有很多种,Ben为我们推荐了如下一些:

缓存函数的运行结果

设置过期时间

缓存IE下载的文件

模板缓存技术

Cache_Lite

由于PHP作为动态语言的特性,缓存机制对于更新频率并不快的站点来说非常重要。

5. 使用IDE, Templates和Snippets加速PHP开发——Chad Kieffer

当Chad Kieffer从UI设计和数据库优化的工作中抽身出来的时候,他会在他的博客2 tablespoons上分享很多技术经验。由于Chad多方面的全面发展,他经常可以发现其他程序员不能发现的问题,并形成相关经验,尤其是他开发网站的方法。他参与了网站开发的各个环节,因此他的建议对于提高网站开发的大局观非常有用。

Chad认为使用Eclipse PDT(Eclipse’s PHP development package)这样的IDE,同时使用一些模板技术和开源项目可以有效地提高PHP的开发速度。

紧凑的计划,长长的to do lists以及deadlines让开发人员非常苦闷。不过有些功能,比如Eclipse Templates,可以有效减少编码的时间和出错的几率。

通常来说,任何项目都可以自动化,自动化程度越高, 你完成项目的时间就越短。花时间来开发使用频率很高的框架和模板,将会节省你以后更多时间。同时,使用像Eclipse and the PDT package这样的IDE,你会发现效率得到明显提高,IDE可以自动闭合,补全分号并且可以在本地debug。

6. 利用好PHP的过滤函数——Joey Sochacki

或许Joey Sochacki并不像Matt Mullenweg那样有名 ,但他也是一个经验丰富的开发者,并且通过他的博客Devolio分享了很多技术经验

Joey发现在编写php代码的过程中有很多地方需要进行过滤,但却并没有太多的coder关注php的内置过滤函数。

过滤数据是我们经常需要做的事情,但是很多功能丰富的PHP内置过滤函数却不为人知。使用类似filter_* 的PHP内置函数,我们几乎可以处理所有的过滤任务,包括数据类型验证/URL/email和IP地址验证/特殊字符处理等等。

过滤是一件复杂的事情,但是我相信joey的发现会给你很多启发,让你认识到PHP强大的过滤功能。

7. 使用PHP框架——Josh Sharp

对于是否应该使用Zend,、CakePHP、 Code Igniter或者其他PHP框架,一直存在着很多争议,但是在Web开发者的心中,他们有自己衡量的标准。

Josh Sharp自己创建了一家提供面包和黄油服务的网站,因此他对于使用PHP框架来开发网站有一定的经验。他认为使用一个PHP框架来进行项目开发(use a PHP

framework),可以有效地节省时间,并且减少出错的几率。为什么?因为他觉得PHP实在是太好上手了。

PHP的易于使用有时候也有缺陷,因为并不严格的语法,经常会导致很多错误代码的诞生。但如果使用一个PHP框架,出错的几率就会大大减少。

PHP框架可以让你的代码结构更加规范,并且节省大量时间。

8. 不要使用PHP框架——Rasmus Lerdorf

与Josh的观点恰恰相反,PHP的鼻祖Rasmus Lerdorf却认为最好不要使用PHP框架,为什么?因为不基于框架的PHP性能更好。Rasmus在Drupalcon 2008的演讲上,用“Hello World”的例子来对比了一些框架PHP和简单PHP之间的性能,结果显示框架PHP的性能要远远落后。

9. 使用批处理——Jack D. Herrington

Jack Herrington对PHP世界并不陌生, 并且为大名鼎鼎的IBM developerWorks贡献过超过30篇的专搞,同时出版过《PHP Hacks》的书,因此他是一个真正的专家。

Herrington推荐使用批处理和Cron来代替那些可以运行在后台的程序脚步,Web用户并不愿意在线等待你的处理过程,所以有些事情更适合放到后台来处理。

诚然,在某些情况下,这有点大材小用了,但是你可以清楚地看到,使用Cron, MySQL, PHP面向对象的方法以及Pear::DB这些便捷的工具来创建一个批处理工具并不是一件复杂的事情。

Jack认为使用cron, PHP和MySQL在后台处理一些任务,比起多进程的业务逻辑要划算得多。

两种方法我都尝试过,我认为Cron非常符合”Keep It Simple, Stupid” (KISS) 的原则,它让后台处理变得简单。与多进程的业务逻辑相比,它没有内存溢出的风险。你可以创建一个简单的批处理脚本,并且在cron中运行,这个脚本会定时检查是否有任务需要处理,处理完之后就会自动退出,因此你不用担心是否有进程卡壳,或者陷入死循环。

10. 及时启用错误报告——David Cummings

David Cummings有一个专门提供CMS软件服务的公司 ,并且获得过几次奖 ,他有非常丰富的PHP开发经验。David曾经写过《two PHP tips he wished he’d learned in the beginning》,其中一点就是:及时启用错误报告,这会节省大量的时间。

我告诉人们,最重要的事情就是最大程度地开启PHP的错误报告,为什么?因为PHP可能会隐藏很多小问题:

变量没有预定义

在代码片段中引用了不可用的变量

使用了未定义的常量这些因素看起来并不是什么大事,除非你在使用面向对象的方法编写一些类库。通常,关闭错误报告将可能使你付出更大的成本来维护你的代码。

错误报告可以帮你轻易地找到代码的问题所在,如果错误报告的等级够高,细微的错误都能被立即发现,帮助你节省整体debug的时间。

字数作文