PHP Development Environments?
rbolkey queries: "I've been looking for a comparison between Zend's PHP IDE, NuSphere's PHPEd, and Maguma's PHP4EE, but have failed to find any. Does anyone know how these IDEs compare? Are they useful? Are they worth the price?" We last handled this question
over a year
ago. PHP has changed since then, and I'm sure more development
tools for PHP have been released since then. What recommendations do
you have for PHP coding environments? What features do you find the
most useful?
Activestate's Komodo has an excellent interface, excellent color coding as well as the ability to debug XSLT files, if you are so inclined. It also has an excellent regular expression builder (handy if you ever delve into PERL), it doesn't do too bad with TCL, either.
It works with windows or Linux and is available on a trial, educational, or professional license basis.
I've been using it for about 3 months and it's been rock solid so far. Better than anything else I've used.
btw, activestate's developer network is an excellent resource, too.
*everything* is Orwellian to cats.
Zend's PHP IDE was too slow for me (when it would even run), and I never could get the debugger to work.
PHPed is for Windows
PHP4EE is also for Windows
So, I keep using vim. If there is anything else out there, I'd love to try it. But for linux solutions it looks like I'll be sticking with vim for the foreseeable future.
`fortune -o`
I find Quanta to work very well for me.
With integrated language references for HTML, CSS, Javascript and PHP. Syntax highlighting for PHP, Perl, SQL and HTML. It works very nicely indeed. Good 'project' grouping as well.
Not a user-interface that really gets in the way - just one that lets me get on with the job.
Quanta development was languishing for a while, but Eric Laffoon has recently taken over and is kicking it back into gear and things are starting to move.
The pre-nusphere one works great, except for a few bugs. I like the purty colors and it gets the job done. I tried the new zend beta and i must say, no matter how hard they try, I cant get used to the java gui.
And for the people who say, "I use vi or emacs", go plow a field with oxen , then try it with a john-deer. And if your a real man go hammer some nails with your head, if you have some spare time you can widdle me a new chair for my desk with a butter knife.
Acme is a programmers tool and comes as part of plan9 & Inferno
things like click on an include filename and it opens in another pane, plumb an error message and the source file opens in the editor on the line specified in the error message, shell output to a pane, etc. etc.
There's an Acme clone for unix systems called Wily
oh yeah, colour coding is for wimps
There are places where the networks are not touching,and there are places where they are-Boeing's Lori Gunter
Why do you need an IDE for PHP development. If you forget a function, www.php.net/manual/ and bam, you have the answer to that function, and the PHP manual is probably more up to date than the IDE anyway.
You want color coding? Use Homesite from Macromedia. I am not sure if it is available for Linux, but its an awesome web development package. Face it, with your PHP development, you will also need to do HTML/CSS/JS so why not use a package that integrates all of them together?
Thanks, -Vic
Why not use Emacs? It can have color coding and is completely customizable...
-- Powered By Linux
is UltraEdit 32.
You can get a PHP Syntax plugin.. Works beautifully.
I end up jumping around languages a lot. PHP, ColdFusion, Java, and even the ocassional ASP. Homesite handles them all very well. Excellent text manipulation, tons of color coding options, and snippets allow you to build your own add ins.
I've only used Komodo a little bit, but it was rather klunky, and at $300, way too over priced. Haven't used the ones you mentioned, but I'd be glad to hear about them.
THIS SPACE FOR RENT
... I use Emacs. Whenever I try one of those dedicated PHP editor, I miss some features I'm used to. Emacs does already quite well SGML/XML/HTML/JSP/JS/Java, PHP lags a bit behind, but with the manual in a browser and the syntax coloration, I've all I need for productive work. By the way, I use StyleMaster for the CSS, in case you were wondering if I was just another Emacs zealot...
I use phped 2.96, which is the last version released before Nu-Sphere took it over. It's really a shame, I would love to get the new version but Nu-Sphere is charging $299 for it, which is a ridiculous amount of money to pay for a scripting language ide. The older version is great when it works, but can be extremely frustrating when you try to add a file to your project and the whole thing crashes. Also, there isn't a linux version to my knowledge. All in all though, it's the best choice for windows php development.
I own Nusphere's IDE and it's a real pain to get working on a different box than the one you develop on. I've yet to get the debugger wroking on it. The other problem is the editor only runs on Winshit. Can't wait for a Linux version of the editor. Since I need to run a M$ OS, I've installed Macromedia UltraDev and added the open source Phakt PHP extension. Very nice RAD GUI dev based mostly on ADO. I was able to develop a site based on 5 MySQL tables, including joins, relatively simply. Much faster than coding everything by hand. In fact, I intend to buy the commercial version, ImpAKT when I get home. Again, I REALLY wish Macromedia would get their shit together and create a Linux port of Ultradev. I would hock one of my guitars for that!
--- Think of it as evolution in action ---
.. on the side of Quanta. It includes syntax highlighting and references for "supporting" technologies (HTML,CSS,yada...) and doesn't have what you don't need. I also like the included documentation integrated into the environment.
To be honest I've never felt the need for an IDE. My favourite text editor, a webserver, a command line version of PHP, and very occasionally a PHP debugger do me just fine.
:)
Every IDE I tried was either slow, unstable, missed basic features of a good editor, or just Crap[tm].
It's not as if PHP is the hardest language in the world to fit in your head, you don't need an IDE to constantly try to stop it leaking out. Well, maybe you do, but I don't
Since PHP doesn't really allow you to do anything interesting that a normal IDE would allow (like, say, DEBUGGING!), we just use Vim and migrate to Perl.
You don't get the debugging (which I hear doesn't work all that well in the other options anyway) but you get a lot of other great stuff (very nice mulitplatform editor with PHP mode, projects, FTP, etc.). www.jedit.org
EditPlus is the best Windows-based editor I've found. Stay far away from HomeSite. It's the buggiest editor under the sun.
i recently discovered the 'mapping' capabilities of homesite and i'm once again hooked. being able to quickly page between code/browse to server-processed code makes testing quick & painless.
i've tried other editors for both windows and x-plat, but none of them let me have the precise code-within-code syntax coloring. i like being able to specify the html/php/css color codes separately, but still have them all work inside the same document. no other editor i've tried manages to do that as well.
the only gripe i would have is that it doesn't handle heredoc syntax exceptionally well, but i haven't seen another editor that does that, either...
www.pixelectric.com
Is the best editor for any lang you use. its great.
Chris Lee
lee@mediawaveonline.com
Hell, I use pico -wz.
I could care less about features, I just want the job to get done without having to learn another interface.
MMM allows you to run two major modes within the same buffer.
.emacs:
:submode php-mode
:front "")))
;; C-c C-f is used by pgsml
;; C-c C-m is used by pgsml
So first, go to http://sourceforge.net/projects/mmm-mode/
and get and install mmm-mode.
Next, get php-mode from http://php-mode.sourceforge.net/ and install that.
Then, put this in your
(require 'mmm-mode)
(setq mmm-global-mode 'maybe)
(mmm-add-mode-ext-class nil "\\.php[34]?\\'" 'html-php)
(mmm-add-classes
'((html-php
(autoload 'php-mode "php-mode" "PHP editing mode" t)
(add-to-list 'auto-mode-alist '("\\.php[34]?\\'" . html-mode))
(defun insert-php-region ()
(interactive "*")
(let ((php-template '(" n p n "?>" > n )))
(tempo-insert-template 'php-template tempo-insert-region)
(mmm-parse-buffer)))
(defun my-php-hook ()
(define-key php-mode-map
"\C-cd"
'php-search-documentation)
(define-key php-mode-map
"\C-cb"
'php-browse-manual)
(define-key html-mode-map
"\C-c\C-p"
'insert-php-region)
(c-toggle-hungry-state t))
(add-hook 'php-mode-hook 'my-php-hook)
Now you will have HTML syntax highlighting and indenting for the HTML bits, and PHP syntax highlighting and indenting for the bits.
Ryan T. Sammartino
"Ancora imparo"
I love CodeWright. It's Windows and it's commercial. It supports a ton of languages out of the box, and you can add more (including your own), sometimes without programming. Syntax colouring can nest languages within another (like PHP in HTML). It's got lots of add ons (via real API), plus Perl and Basic scripting languages.
Complexity is Easy. Simplicity is Hard.
Editplus when I am in Windows, and Quanta / gvim when I am in Linux.
Editplus is a fast easy editor. Quanta is great for HTML stuff especially.
"If you have done 6 impossible things this morning, why not round it off with breakfast at Milliways" -- hhgg
Get it here
Not really an IDE but a super editor with a lot of customization capability. Does syntax highlighting for a ton of languages out of the box and you can define new highlighting patterns and export/import them to/from files. It's what I do the majority of my PHP programming in. It's free to boot. I also use Bluefish some for the HTML work. It's pretty decent with some specialized PHP support. It's nice for forms, you don't need to remeber the exact syntax for all the different input types.
On the Mac side (classic & OS X native), BBEdit is the pro's choice... it does context-sensitive coloring, etc and is the hands-down favorite for any kind of program coding on the Mac -- and it recognizes SQL syntax as well.
Adobe just announced that Golive 6 for OS X would have the Zend debugger engine integrated within it, as well
Dreamweaver Ultradev is another good choice, but at this point in time PHP isn't exactly integrated into it unless you use 3rd party extensions or an abstraction layer like ADODB.
--dr00gy
I've tried both, and they each have their own advantages. Simply, if you're using Windows, go with PHPEd. If you're using another OS, you'll have to use Zend's IDE.
;-)
Zend coded their's in Java, so its cross platform, but a lot less "responsive" and integrated than a program designed for a specific OS. This feature is also its biggest shortcoming.
Feature wise, PHPEd _was_ the winner, but I'm not sure how that still stands. I think Zend is in the release process of version 2.0 of their IDE, and judging from the press release a few months back, it'll nearly match PHPEd. Features such as code completion, snytax bubbles, FTP integration, an integrated debugger, and CVS support were all missing from Zend's first IDE, while all are present in PHPEd. A good portion of those are supposedly in 2.0, but I haven't tried it myself.
Actually, I think both Zend and NuSphere have "free trial" versions of their respective IDE's, so give it a shot for yourself!
mailto:<?=implode("@", array("chris", implode(".", array("php", "net"))))?>
Even so, I still continue to use BBEdit to create my PHP/MySQL apps.
You can have my one-button mouse when you pry it from my cold, dead fingers.
VIM completely rules, and the newer versions have PHP support.
alias elite_php_ide="vim"
BBEdit 6.5 on MacOS X with Apache, PHP, MySQL.
You will never touch Emacs again after you have experienced BBEdit. It is the best $84 I ever spent.
BBEdit does a good job with HTML, PHP, and Javascript all on the same page, recognizing their various keywords and escape chars. It includes a command shell similar to Emacs' shell buffer.
You can have it good, fast, or cheap. Pick any two.
I am wondering if such a comparison can bring a real relevance for the PHP development community evolution to an improved level. I don't think that small nifty features will make PHP development a better choice for the real web developers, that need productivity and a framework for application development.
During the last 3 years, all the editors have included nice and standard functionalities like: multi project support, code highlighting, autocompletion(even for your own functions), integrated debugger, integrated help, etc.
But when it comes to programming dynamic websites, the tasks to do are pretty repetitive and boring and real programming is usually not needed. Usually you connect to a database, get some fields from a query and put them in a HTML table (repeating the procedure for each row or not). Usually you need to see the HTML output and to write some HTML code (preferable in a WYSIWYG editor).
None of the current IDEs allow you to do this (except for Macromedia UD, which does not support PHP natively, but using our GPL extension PHAkt). Programming web application using one of them is a very complicated solution to the problem. You have to reinvent the wheel a zillion times in creating a lot of "form validation", "user authentication", "repeated regions" etc. code blocks, that are very particular, hard to use by others and unmaintanable.
<paradigm shift>What we need is a powerful framework for developing PHP applications, something like .NET, a platform
that will allow us to compete with the ubiquitous .NET and J2EE.</paradigm
shift> (I love using this paradigm shift thing:). It has
to support SOAP and the rest of the current communication protocols (UDDI,
ebXML, etc) and has to provide some "already written and tested code blocks"
for reuse.
That's why we are developing and have released Krysalis - as an Open Source project. Krysalis aims to become what Cocoon is for Java. (if you don't know Cocoon, check http://xml.apache.org). A platform for writing web applications with a complete separation between the data, the application logic and the presentation layer. Of course, to do this, the most hyped and elegant way is by using XML and XSLT. The process is very simple, we use a sitemap that describes the possible requests to the server, some pipelines where we describes the succession of data gathering and transformations and then, for each request to the server (the server is Apache with PHP support) we execute the corresponding pipeline. That is, read the PXP file ( an XML that contains the application logic), execute it and retrieve the complete XML tree, then read the XLST files associated with the request and process the original XML tree with them. After all the XSLT processing is done, we print the output to the browser.(the output can be XHML or PDF or anything else if you provide a Serializer that will do the conversion from the last XML tree to the needed format).
This way, might a site became a little harder to write, but maintaining it will be a piece of cake. The current alternation between application logic and HTML tags (presentation) is a real pain in the ass when you need multiple presentations (like HTML / PDF, like English version and German version, etc). Each time you make a modification in the application logic, you have to search all the places where that application logic block is used and correct them, too. Etc.
How can Krysalis help me create my sites faster? Using taglibs. Taglibs are already written code sections that are included and parametrized in your files and which are converted to real PHP code at the execution time. We have already implemented taglibs for the SQL connection, form variables, authentication.
Technically, Krysalis is also based on ADODB (php.weblogs.com/ADODB), and the PHP problems with way too many and different database connectivity APIs is solved.
To get back to the current topic, what Krysalis need right now is an IDE. We are working on one (Krysal IDE), an editor that will allow you to develop Dynamic Websites with the same ease as you develop Web Services. To reach both the Windows and Linux community, we'll implement it Java (we know. Maybe it will be slower, but at the current hardware prices I don't think this makes a real difference). The rendering engine will be Mozilla (probably) as in the next 3 month it will be mature enough (we think). More, the Lite version will be also open source, so everyone will be able to use and improve it.
Take a look at a current pre-alpha screenshot of Krysal IDE at http://www.interakt.ro/products/Krysalis/. The XML/XSLT part is not yet implemented, we have done only the dynamic XML generation and preview with a preliminary support for taglibs.
That's what we think on PHP development. I would like to know how the slashdotters view this approach.
Alexandru COSTIN :: Engineering Your Desires
Product Manager
http://www.interakt.ro/
+401 411 2610
Try www.editplus.com on Windows.
Or else Komodo or Vim on Linux.
All of them have syntax coloring
Get my e-mail after a captcha test in: http://tinymailt
Well, I tried many PHP editors, and under Windows the best one I could find was EditPlus (or Edit+ if you want), it simply works fine, it's light and stable. PHPeD isn't too bad either, but EditPlus has more nice features! ... it's not very handy but if you get used to it it's a neat editor.
Now i've been migrating to linux and i couldn't find anything similar to the Windows PHP-Editors, so i'm now using ViM with "syntax on" (.vimrc)
Life sucks.
OK ok ok ... I'm going to get beaten over the head for this ... but I quite like vim 6's colour highlighting.
The ability to step through a script during execution would be nice, but enough "error_log" statements (and tail -f on another console) is excellent.