分享

PHP IDE 大甄选

 看见就非常 2012-08-15

关于PHP IDE

我个人开发PHP,还是习惯使用IDE,因为可以迅速提示一些自己写的Library的一些方法和属性,最早的时候,一直用Zend Studio 6.0,当时来说,这个编辑器确实提示迅速。但是随着6.1,7.0,7.1的发布,不但bug重重,而且受限于eclipse这个不太稳定的IDE。还有一个极其致命的短板是,集成于Zend Studio的js解析器极其落后和弱智,在编辑内嵌在HTML中的js的时,语法着色完全不能用,经常是一大片黑色的代码,而且自动完成还会异常,尤其是你写一个闭包函数,他会完全没法正确提示。

这三年PHP开发过程,也是对PHP IDE进行大甄选的一个过程,所有能找到的的PHP IDE,我都用过,最夸张的时候一台机器同时装了7个以上的PHP IDE,我这人就是这样,对自己用的东西十分较真,不测试出个丁丑寅卯誓不罢休。中间的测试过程就休提也罢,只说最终的测试结果(以下排名只依照个人习惯排列)。

1、NetBeans PHP IDE(nb版本6.5以上)

2、PHP Desinger 7.1+

3、vs.php / Komodo IDE 并列

4、NuSphere PhpED

5、.....

6、非IDE的:Notepad++、Ultraeditor、UeStuido

7、其他,乱七八糟的IDE

8、最后一名,Zend Studio

NetBeans PHP IDE缘何能排于前列呢?最客观的考核标准是,这三年来,我用nb写的php的代码数量最多。从技术指标上讲,nb的稳定性是最高的,虽然很多人都抱怨nb开起来很卡,很慢,但我在2G以上环境使用nb一直都很稳定,尤其是写PHP、HTML、CSS和JS,可以说,NB陪我度过了无数黑暗的日子(半夜),他伴我度过了无数从漆黑转向光明的日子(半夜到天亮?)。而且,和下面的IDE进行比较,nb的配置自由度是最高的,语法提示的密度也相当适合(不像PHP Designer,提示的频密程度已经让我觉得烦了),关键的关键是,类似""这种自动提示,但你删除第一个",他会自动删除后面跟着的"(但中间为空字符),这会让你少按很多很多次键盘。

当然,相对来说,如果要评价对PHP语法的理解能力,最好的莫过于PHP Designer,假定一个MVC的开发环境,有以下的一个继承链条:

IndexController  < __Application < ActionController

NetBeans最多最多,只能理解到IndexController这一层,所有之前的类的方法、属性,都能正常提示。但到了view层面,你就完全抓虾了,他实在无能为力了。这点来说PHP Designer却是做的很完善的,即便到了View层面,他一样能告诉你,$this->p提示出$this->params,也许PHP Desginer也不过是对所有出现的属性做了一个临时全局性记录,但聊胜于无。

还有一项我个人设定的评比指标,就是在低平台的运作,大家可以忽略不计,比如移动本的Atom(因为我的笔记本坏了,所以长期拿着一个移动本到处招摇撞骗的,有时候要改改代码),最好的当然是非IDE的诸位,但是netbeans和php designer以及php ed照样能运行,提示也照出不误。

PHP Designer,别看Designer,就以为是和设计有关的东东,其实他旨在让你更加轻松的编写你的PHP代码。他首先是一款基于非常强大的HTML、JS、CSS IDE,这方面功能做的十分完善。

在HTML方面,他是目前为止,对HTML编码准备的最完善的,比如你输入<script,后面一切皆有提示,自动闭合标签,自动提示出标签属性名,进入自动提示出标签属性值,这一点上,已经完完全全的胜出于他的前辈DreamWeaver,绝对是过之而无不及。

在CSS方面,该有的提示都有,这个就不必说了。

在JS方面,他能够选定你当前的库,比如jQuery、Mootools、Prototype,等,在编写JS的时,会有比较充足的提示。官方的视频里,是允许开发者自己设定js Library的,不过似乎我怎么也弄不成功。

PHP方面,他的提示非常全面,方法、属性,这些都无须多讲了。最值得一提的是,在编写混合编码时(混合php、html、CSS、js),他会自动高亮你当前编写的编码块,其他非关联的代码块会变成灰色。这一点能十分有效的集中你的注意力。

虽然PHP Designer拥有种种优点,但他有一个使用前提,即你必须对他十分了解,而且要做一定的配置调整(比如关闭其他无关的js提示,调整提示的时间频率)。而他的自动提示方面,除了提示频率过高以外,还存在常常多完成一个括号,这玩意常常会让你多按几下键盘。值的一提的是php Designer自动带有中文语言,而且不是那种老外翻译的十分蹩脚的那种。php Designer属于商业软件,需要破解的朋友,可以与我联系。

vs.PHP,这个家伙基于微软的vstudio,可以说既集成了他的好处,也集成了他的缺点。文件编码在windows XP上,一直是vs的一个诟病。他也做了足够多的语法提示,也能动态的分析你的类库。但是由于我极其不喜欢VS的花括号的格式(老习惯一直改不了),还有vs的HTML编辑器,一直给我太硬的感觉,不太好用。而vs的CSS、JS,一直以来都做得不太好。

有一点值得称道的是,vs.php可以使用vs 2008的js提示,不过我一直觉得这玩意也是个蹩脚的设定,在html代码,或者js的首行,通过用户注释一段js提示的文件入口,他会自动加载该文件,并在你编写js的时候,给予你足够多的提示。之所以说他蹩脚,因为他能很好的工作与aspx,却无法很好的在其他语言上工作(微软总是屏蔽技术实现细节,只告诉你个使用方法),而且,vs会缓存所有的提示,这意味着,你需要手动去修改vs的项目设定文件,这是很痛苦的事情。而且但你修改完毕,他又会重新缓存。

vs.php也是商业授权软件,一直以来我都找不到最新版本的破解,所以无法对最新版本进行测试。

Komodo IDE,这也是个商业授权软件,但他做的十分开放,拥有完善的IDE接口,你可以自己扩展。多的就不说了,他有很多用户自己开发的插件,针对性十分强,其中有一套模仿mac下的textmate的html输入提示,只能在windows下运行(个人觉得此插件比ZenCode实用多了)。

PhpED,也是一个十分优秀的PHP IDE,他拥有性能测试,能对单个脚本文件进行性能测试,同时也能嵌入到web访问中,这个对于早期刚开始写php代码的人,有很大的帮助(虽然用xdebug也能做同样的事情,但你需要对xdebug进行设置,还得有适合的工具,这对初学者是十分痛苦的),他也拥有类似php designer的代码块高亮。不过他对于js方面的提示就有些乏善可陈了。HTML编辑器方面,他也在努力模仿DreamWeaver,不过需要商业授权才能用到最新版本的功能,对于一个写了10年HTML的人,那点预览和提示,也可有可无了。

总体来说,如果新接触PHP的人,PhpEd,PHP Designer会比较适合,但你对PHP有足够多的熟悉和了解,又需要一个更简易、更趁手的IDE时,Netbeans和Komodo会是更好的选择。

非IDE的几个软件中,我测试过EditPlus,Notepad++,Ultraedit,不过他们都无法对$进行双击选定,据说Editplus配置能解决此问题。Notepad++通过插件能实现引号、括号的自动完成。

不过,终归来说,我的目的还是需要一个晚上的php ide。因为你试想,在你打开一个诸如Dz的论坛,ucenter home的代码,或者你从SVN中checkout一个工作团队写好的代码时,编辑器已经自动完成了对常用函数、类库的代码收集了,你说需要的,只是在适当的位置加入你的代码即可。综合各方面因素,推荐度最高,还是netbeans,除了他的容量比较大以外,拥有良好的php library的分析能力,适当的自动提示,完善的自动完成,对js和HTML的高亮十分完善,同时,还支持一定范围的语法错误检查,这不正是你梦寐以求的IDE吗?

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多