문제

I've programmed for six years, and in that time, I've never used a PHP IDE. I feel perfectly fine using Vim, the Linux shell, MySQL command line and Subversion command line for my web application development. When I'm asked to work on other people's projects, or open source projects, I can generally find my way around after a quick system architecture overview.

Recently, I was curious about PHP IDEs. I downloaded NetBeans, but I lost patience debugging installation problems.

It makes me wonder, will my productivity increase substantially with the use of a good PHP IDE? What percentage of LAMP/PHP developers use a PHP IDE?

도움이 되었습니까?

해결책

I always use an IDE now, if it supports refactoring. I may use it in addition to, or alongside, Vim or Emacs, but refactoring is now an integral part of my development style and having automated refactoring tools is essential.

If you're only going to use the editor features of whatever IDE you choose, you probably won't benefit much. The benefit is when:

  • the IDE can do for us something that would take us much longer, OR
  • the IDE provides information that we would otherwise need to work to find

다른 팁

I have used NetBeans in the past for PHP projects and liked it a lot. The fact I liked it is just my opinion, but I don't remember having any install issues. NetBeans synced up great with my teams SVN server and things worked smoothly.

I use Eclipse. It's bloated, unwieldy, slow and quirky, but I find that it has some features that make me a better/faster developer. The two main things I like about developing PHP with Eclipse are:

  • Function documentation tooltips. Given that PHP lacks a standard parameter order for a lot of things, this is especially useful with the str family of functions. I don't have to remember whether a particular function order is ($haystack,$needle) or ($needle,$haystack), I can just type the name of the function and hover over it.
  • "Jump into" functionality. Highlight a function and hit 'F3', and it will take you to the class or file where that function is defined. This is extremely helpful.

There's other features that are useful as well, although not as profound. Things like autocomplete and PHPDoc comment templates (type /** and it creates a basic block comment pre-filled with your parameters) tend to be handy.

Due to deficiencies with Eclipse, I tend to develop with multiple tools. For example, I find UltraEdit's "Find in multiple files" functionality to be excellent (as well as "edit in Column mode" for batch SQL edits), and I usually have it running alongside Eclipse.

I've tried NetBeans several times, but each time I've installed it in the past, the internal PHP function documentation has been broken, so hovering over any built-in PHP function results in an intellisense box saying "PHPDoc Not Found". I found that extremely aggravating, and each time have gone back to Eclipse. I like the looks of it, but I need that functionality (a vague reference to it on some forum has one of the developers saying that the build script is broken so it's not linking the docs properly, but they had yet to fix it as of my last attempt).

I use NetBeans too. So far the best from what I've tried. Zend Studio is terrible and Eclipse is beyond any criticism (you cannot just double click php file to open it in Eclipse, for starters). There are several more free and commercial IDEs but most of them for Windows only.

Edit: tools I use most often are: method suggestion, refactoring, "go to declaration/defintion", "find usage", debuging (obviously, since it underlines erroneous statements).

I use Eclipse with a PHP plugin and have been pretty happy with it.

I've used Aptana Studio (Eclipse) for a few years and it had a decent PHP editor with code hinting built-in. However, the new version of Aptana Studio now uses PHP Development Tools (PDT) instead of Aptana's own editor. I never had good luck with PDT, but hopefully development will improve now that Aptana is involved in the project.

I use NetBeans (on Windows and Linux), and I have used Eclipse in the past (on Windows and Linux) and phpDesigner (on Windows) which is a commercial tool.

All three have approximately the same feature set, and all three can be used to debug PHP code.

ATM, I prefer NetBeans.

Previously I used plain editors such as Notepad++ and TextPad, my efficiency coding increased using an IDE with code-completion and runtime debugging.

IDEs speed up development so much, just autocomplete is so useful.

I use CodeLobster which is really great and free, but it is especially good if you can afford to shell out money (and acutally have use for) for their various extensions for popular open source applications like WordPress, Joomla, etc.

I've used almost every editor I can think of for Windows and Linux, and I'd have to say that if I use an IDE these days - I love Eclipse PHP Developer Tools (PDT). For beginners, I'd recomment the all-in-one.

Eclipse is such a good development platform, and everyone seems to like making plugins for it (as it's completely cross-OS, too). Google has made their Google Web Toolkit (GWT) and Android plugins for Eclipse over other IDEs. Flex, Zend Studio, and Aptana Studio are just glorified versions of Eclipse as well.

Additionally, there are cool tools like Subclipse and Outline view (shows all functions in PHP / JavaScript, classes and rules in CSS), File Search [/ and Replace] with regular expression support, and easy comparison to local or remote files. These tend to speed up my overall development time, as I think they would for you too.

NOTE: There's a bit of a learning curve with Eclipse, and it's harder to simply edit a file at a time (it's best if you make projects), so it's really a matter of preference. If you're a professional PHP developer and you spend a majority of time on larger projects, I'd really recommend at least trying it out.

I use Vim. I find it the easiest and cleanest.

I am not a PHP person, but from my (probably similar) Perl perspective, I find that the following functions of IDE are useful/not (as far as what I perceive to be IDE functions at least)

  • Code styling (syntax hihgliting) and block folding - Highly useful. But this is a feature of a high-end editor rather than IDE proper, to be honest (e.g. it is included in non-IDE editor UltraEdit, not only in IDE-proper superset of UltraEdit Studio). Ditto for other features that i'd consider programming editor rather than IDE - e.g. FTP/source code repository integration, block selection, regex support, etc...

  • Code analysis - function lists, etc... Useful but not life-shattering. A good intelligent hints would be nice but again not "must have".

  • Integration with tools: For Perl, since there's no building, projects, compilation etc... as separate complicated steps, I found the need for IDE (and thus the win from using one) to be negligible. Other people might disagree.

  • Integrated debugging - I never heard of a good IDE with integrated Perl debugging (my ideal for such functionality would always lie with Borland's Turbo series of IDEs :) ). But I would probably find it very useful/helpful given the crappy Perl debugging GUI people use, if I ever found one.

I've used Eclipse + PDT and NetBeans. I much prefer Eclipse.

I think any productivity gains are going to vary depending on both the developer and the nature of the project. I use TextMate or Vim for small projects, while I reserve IDEs for larger/more complex projects or ones with underlying APIs I am not familiar with. Having a built-in API completion is a big help when a project or its underlying framework have so many methods you can't possibly learn and remember all their signatures and return types (at least for the duration of the iteration one is working on). Also debugger integration on complex projects can be a huge timesaver (especially if you're not using a testing suite).

Another thing to keep in mind is that to see a big gain in efficiency, you have to learn how to use the toolset of the IDE efficiently which will have a learning curve. In my experience that cure hasn't been major in either IDE I've used, but it is there.

I don't use an IDE but I also work on fairly small projects in PHP. I use textmate which is a bit like a *nix editor on mac with nice shell integration. For scripting languages in general I don't use IDEs. Personally, the only time I really appreciate an IDE is when you must compile/link. I've never been a fan of make etc.

Eclipse PDT seems to work for me. I'm not a web developer, but took on revamping a website for a non-profit who had their web developer leave due to job relocation. Without any documentation or system overview, I was able to find my way around and make changes simply using Eclipse's variable information pop-up box tool (I'm not sure what it is formally called, but I hope you get the picture). From a productivity point of view, the auto-indent and variable/keyword auto-completion features is a great speed booster.

If you're using a Mac, I recommend Coda. It has a great feature set - integrated FTP, SVN, CSS editor, terminal, etc. and a slick interface. It's US$99, but it is well worth it.

I really like Komodo Edit by ActiveState. I use the lite version of the software, and it keeps project files together, has code complete, code hightlighting, the works.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top