PHPPersonal HomePage
PHP是一个什么原因出现的呢?它是一个技术人员希望能用一个快速的方面来完成他自己的个人主页中的一个小应用而在他一发不可收时出现了php它使一个人能在多种操作系统下迅速的完成一个轻型的Web应用所以在短短的几年里php迅速的升级了它的版本同时在GNU的世界里找到了一个青梅竹马的伙伴Apache这终于让php有了基础能在一个最佳的环境中运行同时由于两个产品都是公开源代码的产品所以大家可以使用它们的源代码将这两个产品用最完美的方式结合到一起使用起来就如一个产品一样个人认为php是自由软件在web应用平台上一个决胜的工具如果没有php的出现还会有许多人认为自由软件就代表了对开发人员的高技术要求难记的代码复杂的工具php使一个会使用basic的人员在极短的时间里快迅学习并完成用户需要的应用
怎么说php呢?如果说ASP是一个COM哪么php说的更精确了可以说php是一个纯粹的Script翻译器这也是php由升级为的一个重大原因在这个版本里它重写了语法分析器从而加快了php整体的效能而且从中你也就会明白为什么php需要支持这种或是那种扩充功能时它一定要与相应系统的lib库进行再编绎的原因正因为它是正宗的翻译器所以它是将script翻译成为需要执行的函数再去执行它们外部扩充不能由一些动态加载的方式进行所以只能静态的编绎进php中(这只能在windows中除外)
强势
一种能快速学习跨平台有良好数据库交互能力的开发语言ASP比不上它的就是这种跨平台能力了而正是它的这种能力让Unix/Linux有了一种与ASP媲美的开发语言语法简单书写容易现在市面上也有了大量的书同时Internet上也有大量的代码可以共享对于一个初学者想学些高深的Unix下的开发来说是一个决好的入手点
与Apache及其它扩展库结合紧密php与Apache可以以静态编绎的方式结合起来而与其它的扩展库也可以用这样的方式结合(除外的就是Windows平台了)这样的方式的最大的好处就是最大化的利用了cpu时和内存同时极为有效的利用了apache的高性能的吞吐能力同时外部的扩展也是静态连编从而达到了最快的运行速度由于与数据库的接口也使用了这样的方式所以使用的是本地化的调用这也让数据库发挥了最佳效能
良好的安全性由于php本身的代码开放所以它的代码在许多工程师手中进行了检测同时它与apache编绎在一起的方式也可以让它具有灵活的安全设定所以到现在为止php具有了公认的安全性能
弱势
数据库支持的极大变化由于php的所有的扩展接口都是独立团队开发完成的同时在开发时为了形成相应数据的个性化操作所以php虽然支持许多数据库可是针对每种数据库的开发语言都完全不同这样形成针对一种数据库的工发工作在数据库进行升级后需要开发人员进行几乎全部的代码更改工作而为了让应用支持更多种的数据库就需要开发人员将同样的数据库操作使用不同的代码写出n种代码库出来让程序员的工作量大大增大
安装复杂由于php的每一种扩充模块并不是完全由php本身来完成需要许多外部的应用库如图形需要gd库LDAP需要LDAP库……这样在安装完成相应的应用后再联编进php中来这也就是我以前在代码联盟新闻组中对网友所说的一定要在FreeBSD/Linux/Unix下运行php的原因只有在这些环境下才能方便的编绎对应的扩展库这些都是一般开发人员在使用php前所先要面对的问题正是这样的问题让许多开发人员转而使用其它的开发语言必竟Unix没有那么多的用户
缺少企业级的支持没有组件的支持哪么所有的扩充就只能依靠php开发组所给出的接口事实上这样的接口还不够多同时难以将集群应用服务器这样的特性加入到系统中去而一个大型的站点或是一个企业级的应用一定需要这样的支持的注在php的版本以后加入了对servlet/javabean的支持也许这样的支持会在以后的版本中更加增强也许这样的支持会是php以后的企业级支持的起点
缺少正规的商业支持这也是自由软件一向的缺点我想在国内php的开发人员正在快速增加相信在不久的将来这样的支持能多起来
无法实现商品化应用的开发由于php没有任何编绎性的开发工作所有的开发都是基于脚本技术来完成的所以所有的源代码都无法编译所以做完成的应用只能是自己或是内部使用无法实现商品化
总结
适用人群熟悉Unix环境需要在最少的投入下完成快速的应用开发
适用平台FreeBSD/Linux/Unix操作系统Apache服务器适用应用Internet高访问量快速数据库开发的应用
学习方式Internet上国内丰富的资源Internet上丰富的源代码资源完全可以参考这样的例程来完成自己的应用市场上最近出版的好几本php手册
推荐开发工具Home Site/PHPEd
推荐开发环境FreeBSD /RedHat 操作系统/Apache /MySQL /P /M RAM/G HD
推荐应用环境(最少)FreeBSD /MySQL /Apache /P /M RAM/G HD
推荐应用环境(最佳)FreeBSD /Sybase /Apache /P III /M RAM/G HD