views:

559

answers:

6

I've been a PHP Dev for many years now, and it just dawned on me that maybe I could be using better development tools.

For example, my typical setup for development is

  1. Notepad ++
  2. Dev WAMP Server (local machine usually)
  3. CodeIgniter framework (lately I've fallen in love with it, as it speeds up deployment for me, big time.)
  4. PHPMYADMIN (for mysql of course).

If you are a PHP dev, whats your typical setup? Eclipse (too bulky for me at times)? etc;

I'm curious if I am missing something that might save me a ton of time, like some kind of on the fly PHP code validator (before I hit F5 and then debut what the error is). I currently achieve somewhat of a 'validation' by seeing the color highlights in Notepad ++

+6  A: 

As much as I hate Eclipse, I still use it because of it's ability to associate projects and provide the "jump into" functionality with F3. I'd really love an alternative, but Netbeans can't seem to get their intellisense working with the built-in PHP functions ("PHPDoc not found"), and I haven't found any other IDE that I like.

My toolset consists of:

  • Eclipse
  • Ultraedit (for quick editing and file/grep functionality)
  • Apache and PHP as separate installs
  • MySQL Administrator

I highly recommend MySQL Administrator... it's an excellent tool.

One thing I'll mention as well is my method of setting up web applications with Apache. I generally edit my hosts file and add an entry like this:

127.0.0.1   myapp.example.com

Then set up the apache config to have a <VirtualHost:80xx> on a separate port for each app I'm working on. With this method I never have any cookie-setting problems, and I can make each application accessible from outside my router by opening individual ports. This is great for showing clients the latest developments, but having full control over all the projects I'm working on. A simple config file controls the application's main URL, so when I'm ready to move code to production, a quick change is all it takes.

zombat
I use Aptana which is basically Eclipse + Extras.
mauro.dec
I am trying Aptana .. do you get F3 working?? I dont seem to be!!
Wbdvlpr
I remember trying Aptana and not being much more impressed than Netbeans. I might give it another shot though.
zombat
See I've tried Aptana, and just plain o'l Eclipse and for some reason they just didn't 'stick'.I have used MySQL Administrator, but somehow just fallen back to phpmyadmin simply because 'its there' with a WAMP install (WAMP Server).I also do the virtual hosts entries in my hosts file, it lets me keep each project seperate like you said zombat.
Jakub
+1  A: 

Zend Studio is my favorite, it's built off of eclipse

Ben Reisner
A: 

Since you're on windows, I can highly recommend HeidiSQL over PHPMyAdmin for working with MySQL. PHPMyAdmin was really designed for working with remote servers - there are much better tools for working with local ones.

I know you've dismissed Eclipse, but it makes it very easy to debug code. Refreshing a page with F5 isn't really debugging btw - you can't set breakpoints, or monitor variables etc. (I know there's a method to print out all current variables etc., but that's very cumbersome)

+12  A: 

This is what works for me:

Server stuff (emulates my RHE deployment server):

Code writing:

Template editing:

Debugging code and templates:

Database stuff:

Other useful stuff:

Almost all this stuff is open source and actually useful.

djn
Great list of usefull stuff, thanks, can't really mark 'answer' for your post as there really isn't one. Just interested in what others use. Thanks djn!
Jakub
Glad to hear you like smarty-lint. :)
Jon Ursenbach
Jon, thank you for writing it - it's really handy. Version 2 was indeed much easier to set up on Windows (just had to add an empty templates_c folder). Since I wrote this post I've managed to have it in N++'s right-click menu too, so I'm using it every 15 or 20 lines.
djn
A: 

vim+mysql command line+xampp+ocassionally mysqladmin

vim? Really? Glutton for punishment? ;)
Jakub
A: 

My linux setup consists of: apache, mod_rewrite, mysql and php all logging to one file /var/log/dev-console.log

then i tail that with a graphical tailer like multitail or acoc to add colour to the sql and filter out some of the mod_rewrite text.

editing in bluefish-unstable

Question Mark