PHP IDE的最佳代码完成?

PHP IDE的最佳代码完成?,php,ide,code-completion,Php,Ide,Code Completion,尽管如此,我相信代码完成(又称智能感知)是代码编辑器的第二大发明(第一个是语法着色)。它确实使编码更容易,因为我不必担心是将函数命名为CalculateReportSums,ReportSumsCalculate,还是简单地命名为GetReportSums 不幸的是,我还没有找到一个代码编辑器来为PHP实现这个特性。“令人满意”是指“与Visual Studio for C#一样好” 我选择的第一个文本编辑器是Notepad++,但它只有一个PHP内置函数列表,只有在按下Ctrl+SPACE键后

尽管如此,我相信代码完成(又称智能感知)是代码编辑器的第二大发明(第一个是语法着色)。它确实使编码更容易,因为我不必担心是将函数命名为
CalculateReportSums
ReportSumsCalculate
,还是简单地命名为
GetReportSums

不幸的是,我还没有找到一个代码编辑器来为PHP实现这个特性。“令人满意”是指“与Visual Studio for C#一样好”

我选择的第一个文本编辑器是Notepad++,但它只有一个PHP内置函数列表,只有在按下Ctrl+SPACE键后才会显示。我还尝试了Eclipse+PDT,它更好,但仍然经常出现问题,有时会因为没有明显的原因而完全失败(没有可用的列表),并且总是只在暂停键入时出现(将超时设置为某个较小的值会导致列表不完全出现)

那么,外面有更好的吗?可以知道当前作用域中所有变量的东西,能够跟随
include()
s,并在我键入时实时显示列表

我知道PHP是一种动态语言,完美的代码完成在原则上是不可能的(因为在运行时之前你不知道会有什么变量),但它仍然可以实现到相当好的程度——比我目前看到的要好得多

添加:添加几个要点-我希望CC是即时的,就像在Visual Studio中一样。我键入一个字符,列表将同时显示。我键入另一个字符,列表在我眨眼之前就变成了一半大小。CPU使用率接近于零,结果立竿见影(所有人都为缓存之神欢呼!)


此外,我还可以用一种特殊的方式记录我的函数甚至变量。我更喜欢PHPLint语法(因为以后我可以用它检查代码),但其他语法也可以。强制这样做也有利于你的评论纪律。:)

代码辅助功能
帮助编写HTML、CSS、JavaScript、PHP和Ruby。支持最新的HTML5规范。包括信息 关于主要web浏览器中每个元素的支持级别


我发现Netbeans比Aptana具有更好的代码完成能力。当我使用codeigniter时,Netbeans会在Aptana不会的模型中为我的静态方法编写完整的代码

自从我发布这篇文章以来,JetBrains已经发布了PHPStorm,并拥有您的快速火力智能感知,以及更好的类型提示。这是绝对优于所有其他IMHO。我已经免费使用EAP 2.0好几个月了。

vim

另外,看看推荐的类似问题,我注意到已经有一个很好的问题讨论了使用vim代码完成的不同方法


您可以尝试Zend Studio。

我使用PHPEd(),它具有此功能的可行版本


注意:他们在头版上列出了一份报价忽略此项。它已经在明天结束了至少4年了。

你是对的,intellisense在像php这样的动态类型语言中要复杂得多。例如考虑

  function get_foo($x) {
       return $x ? new abc() : new xyz();
  }

  get_foo(123)->... can your IDE autocomplete here?
我不知道PDT,但Netbeans无法处理这个问题,phped要求用一种特殊的方式对“get_foo”进行注释


我还没有尝试过Jetbrains()即将推出的WebIDE,但在这方面看起来很有希望(见屏幕截图)。

我想你是在Windows上。在windows中,我通常使用phpDesigner(),它具有相当好的CC。在linux中,我使用geany()或vim,两者都有CC,在后面的例子中,您需要设置它。我发现Eclipse过于臃肿,我对等待它启动感到厌烦\

毫无疑问,使用NetBeans是非常有用的,并且具有良好的智能性(好吧,这并不完美),但比Eclipse更好。

Kimodo具有良好的代码完整性,不仅展示了PHP中的函数,还展示了您在当前上下文中声明的内容。此外,如果您已经正确地记录了您的函数或其他任何函数,它也会显示该文档

我推荐你。这是免费的。它适用于所有平台,主要用于编辑php、jsp、java、css、html等。。。 适合SVN,mercurial,而且您可以轻松地将其与

它有助于智能感知弹出窗口


相信我,我正在使用它进行php开发,它是我能找到的最合适的ide…

我还没有看到任何比Zend Studio 5.x中的自动完成更好的东西。我已经尝试过更高版本,它们是在Eclipse上构建的,并且很可能使用Aptana

不幸的是,这意味着保持windows的XP或2000外观,因为Java GUI(Zend Studio的一个构建平台)在Win7外观中出现了问题,但对于Zend 5的功能来说,这是非常值得的

它不仅会自动完成已知的函数,还会自动完成你所做的变量/函数,不仅是你当前的文件,还有任何打开的文件(我认为是打开的项目中的任何文件),还会自动建议类项目


另外,能够在Zend Studio内部运行本地代码来测试部分代码是非常棒的。如果它能让您轻松地保存到本地文件系统并同时上传到服务器上。。。。(我只是让一个FTP程序在后台运行,每10分钟将下载任何更改到服务器上)。

这是基于Eclipse使用的相同PDT。不知何故,我不相信它……Aptana真正让人恼火的是,它试图在每次自动更新时秘密安装其专业版演示。这绝对是一种让我不想给他们一毛钱或使用他们的产品的好方法。@Vilx:Aptana在standalone或Eclipse插件中都有@布兰登:那很烦人,