PHP程序员应该使用的10个组件

简介

PHP程序程序员必须知道的十个项目组建,有了它们可以为你节省很多时间。

  作为一个PHP程序员,你应该知道PHP有着最大的代码库。所以无论你想在程序中添加什么 模块 ,肯定能找到开源解决方案。

  开源解决方案可以给你很大的帮助,比如:

  • 开源代码是由很多人一起完成的,因此往往比一个人完成的结果要好。
  • 你可以获得免费的代码更新和升级,否则你需要自己来写这些新的内容。
  • 你节省了 开发 时间,同时提高了项目的质量

  做了那么多年的网络 开发 人员,我自己整理了一份PHP组件的清单,这些组件可以非常容易地部署在任何项目中,我经常使用。

邮件发送

  每个网站都会需要发送邮件。PHP的email()函数虽然不错,但当我们需要发送附件或使用SMTP协议发送的时候,就无能为力了。所以在这样的情况下,你应该使用 phpmailer

用户管理

  另一个常用的 模块 是用户管理模块。使用该模块可以使用户进行登录、登出和注册等操作。我个人感觉找不到一个很好的组件来完成这个任务,所以就自己写了一个 Php user class 。这个组建甚至可以用在需要公开发布的应用中,因为它可以根据定制来使用不同的数据表、变量类型等。

获取RSS

  你有想过在你的程序中添加获取RSS信息的 组件 吗?虽然要编写一个这样的组件很容易( 教程 ),但更多的时候你需要更全面的功能,这个时候你就需要使用 Magpie RSS

地理定位

  很多时候你会想知道网站的访客来自哪些国家和地区, Maxmind 就给出了针对此问题的解决方案。( 教程

获取远程信息

  有时RSS的功能并不能满足你获取远程信息的需求,因为你想将整个网页的信息捕捉并保存起来。这时你肯定会需要 htmlSQL class 这个组件。你可以通过它使用SQL语句来获取网页信息,很酷吧?

引用通告

  在我们这个时代里,发送和接受引用通告是网站的一项非常重要的功能。如果使用 php trackback 这个组件就能非常容易地办到了。

模板系统

  模板系统是所有网站都会使用的一个 组件 。模板引擎可以节省你很多时间,而且可以让改变网站页面风格和设计变得非常容易。 Smarty 是一个非常优秀的模板系统,基本上所有的PHP网站都在使用它。

BB代码

  BB代码过去是论坛的一项功能,但随着越来越多的网站使用这项功能来让自己变得更加友好,相信你也想试一试这个功能吧。但问题在于BB代码 组件 的编写需要大量的时间和经历,不知道你是否能自己写出来。如果你不能,那就使用 StringParser BBcode class 吧。

PayPal支付系统

  你也许知道,对于那些想在自己的网站中设立PayPal支付系统的网站,PayPal提供一套非常好的应用程序接口(API)。 paypal IPN integration class 组件便可以让你在20分钟内实现这个功能。

编辑器控件

  对我来说,用 php MyAdmin和一般的文本编辑器就可以很好地修改网站的内容。但对于我的客户来说,他们需要一种所见即所得(WYSIWYG)的功能强大的编辑器来帮助他们晚场工作。使用javascript编写的 tinyMCE control 就是这样一个组件,使用它可以让你节省很多时间。

所有PHP程序员都应该知道的五个工具

Phing - 一个项目构建系统

Phing Logo Phing 是一个基于 Apache ANT 的项目构建系统。它的名字是一个拗口的语句首字母缩写 - PH ing I s N ot G NU make 。Phing可以做传统构建系统比如 GNU make 能做的任何事情,同时没有陡峭的学习曲线。

在phing(以及其他的构建系统)背后的思想是评估一系列相关性,然后执行一系列PHP类去正确的安装和配置一 个应用系统。构建过程用一个简单的XML配置文件控制。Out of the box, phing内置可以执行一系列替换(比如:在你的开发版本和产品版本间改变include路径)、执行SQL语句、移动和复制文件、运行外部脚本等等。通 过扩展包含在发行包中的“task”类,你也可以创造自己的定制任务。

对任何需要在超过一台服务器上部署大型PHP应用的人来世,Phing是一个无价之宝。同时我发现它对简单的PHP脚本也是很有用的。

Xdebug - 调试和分析 工具

Xdebug Logo Xdebug 是帮助你调试和分析脚本的一个PHP扩展。Xdebug中最有用的特性是在激活后显示的新注意信息、警告信息和错误信息。如果一个脚本不能正常运行,Xdebug将会输出关于错误信息的完整 堆跟踪 ,会附带函数名称、参数值、源文件和行号。这对于厌倦了PHP默认只带的可怜的错误报告功能的程序员是一个值得欢迎的特性。

这个扩展有很多更先进的功能,允许开发人员进行代码覆盖率分析,收集分析信息以及交互式地调试脚本。 profiling functionality 功能尤其有用。分析器使用一个普通的输出文件格式,允许你使用象 KCacheGrind 这样的工具快速发现你代码中的瓶颈。对任何严肃的开发人员而言,一个好的分析器是基本工具,它使得你妥善优化你的代码,同时避免 过早优化带来的危害

PHPUnit - 单元测试框架

PHPUnit logo PHPUnit 是一个轻量级的PHP测试框架。它是在PHP5下面的 JUnit 3.8.1 完整移植,是 xUnit 测试框架家族的一员(它们基于 软件模式 先锋 Kent Beck 的设计)。

单元测试是几个现代 敏捷开发方法 的基础,使得PHPUnit成为许多大型PHP项目的关键工具。这个工具也可以被前面讨论的Xdebug扩展用来生成 代码覆盖率报告 ,并且可以 与phing集成 来自动测试。

Propel - ORM(对象关系映射)框架

Propel Logo Propel 是一个PHP5下面的 对象关系映射 (ORM)框架,它起源于 Apache Torque 项目。它提供了一个复杂但是易用的数据库抽象层,使得你可以在PHP中象使用普通类和对象一样得使用数据库实体。Propel允许你使用一种简单的XML格式定义你的数据库,这个XML文件被用来映射数据库,生成应用中使用的静态类。

Propel被内嵌于流行的 Symfony PHP框架 ( 还有其他的 ),它使得代码更灵活、模块化以及可移植。这个项目有The project has 出色的文档 ,以及很棒的支持社区。

php MyAdmin / phpPgAdmin - 基于web的数据库管理系统

phpMyAdmin Logo 历史有点长可是还是很有用, 是对于任何数据库(对应PostgreSQL和SQLite是 )最有用的管理工具之一。它有助于做每一件事情 - 从为了调试应用去创建和删除数据库到做备份。安装它通常是我在一个LAMP服务器上面安装完 Apache, PHP和MySQL后做的第一件事情。如果你使用MySQL,不知何故还没听说过它,那么 现在就安装 php SQLiteAdmin php PgAdmin php MyAdmin

其他 工具

还有很多优秀的 工具 用以符合各种需要,帮助PHP开发者创建一个丰富的开发环境 — 我希望我可以说到所有这些工具。我发现对自己有用的工具有 PHP Beautifier , Spyc , Creole Smarty 。我确信还有很多我忘记或者没听说过的有用工具。因此,如果你知道某个我遗漏的PHP开发伟大工具,请留言让我(以及所有人)知道!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值