Whats a great dev setup for working with PHP + MySQL?
codeigniter, mysql, php, phpmyadmin
Solution
This is what works for me:
Server stuff (emulates my RHE deployment server):
- Apache 1.3 and 2.2
- mod_security
- PHP 4 and 5
- MySQL
- MDaemon mail server (old 3-user version just for testing mail())
- ImageMagick
- ffmpeg
Code writing:
- Notepad++
- a custom command in shortcuts.xml to open the PHP manual on the selected function
- another custom command to run PHP in lint mode (`php.exe -l`) on the code file
- yet another custom command to run RATS scanner on the same
- poEdit for I18N
Template editing:
- Smarty
- the Notepad++ User Defined Language file for Smarty
- another custom command to run smarty-lint
- my own Notepad++ autocomplete file for Smarty
Debugging code and templates:
- Xdebug
- the Xdebug Helper extension for Firefox
- the DBGP plugin for Notepad++
- WinCacheGrind for profiling
- Firebug with FirePHP
- modified Smarty debugger that outputs to FirePHP
- dBug
- Tail for Win32 to read the error logs in realtime
Database stuff:
- HeidiSQL to manage MySQL
- SQLite Manager for Firefox
- ADOdb
- MyEnTunnel for remote connections via SSH
- rarely used: SQLite 2009 Pro, MySQL Workbench, DBDesigner4
Other useful stuff:
- a Subversion server with TortoiseSVN and Winmerge
- Keynote NF to store code snippets
- Filezilla with Notepad++ set as default editor
- Ndexer (modified to add support for Notepad++) for searching the code archive
- the Regex Coach
- Fiddler2 with JsonViewer
- Nikto vulnerability scanner
- PhpSecInfo
- Doxygen
- miniPHP Studio to make desktop applications with PHP
Almost all this stuff is open source and actually useful.
Problem
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 - Notepad++ - Dev WAMP Server (local machine usually) - CodeIgniter framework (lately I've fallen in love with it, as it speeds up deployment for me, big time.) - 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++.