If you have been working in PHP for a while, may be it’s time to go pro. This article lists a number of tools and software that will improve your development practice and boost productivity. They are absolutely free and open-source! There are alternatives for most of them, so you can feel free to do your own research to adopt a tool.
Unit Testing – PHPUnit
Unit testing is an effective practice for developing software, where you can test your functional units of your code, catch the bugs and fix them early in the project. PHPUnit is a member of the xUnit family of testing frameworks, the same family where the popular JUnit framework for Java belongs to . It enables to you write tests on pieces of your code, run them automatically and analyze their results.
» Read the PHPUnit documentation
Debugging – Xdebug
Debugging is an important part of development process. The more efficient your debugging process is, the faster you build something. Instead of relying on echo(), print_r() or var_dump() functions, you should try using XDebug. Xdebug is a multi-purpose tool, providing remote debugging, stack traces, function traces, profiling and code coverage analysis.
Documentation – PHPDocumentor
A good documentation is essential to the success of any software project. If you want your code to be read and reused by other developers, PHPDocumentor can help you with its automated documentation engine. All you have to do is to comment the code according to its specification. It is also possible to generate separate sets of documentation from the same source.
Version Control – Git or Subversion
If you are working on a multi-developer software project, you cannot use the underlying file system to keep track of changes made to the code. Otherwise people will be overwriting or deleting each others code. With a version control system, you can create a repository of the source code, branch out from it when you need to add a new feature, submit the changes and then merge it with the main branch after testing. Thus it makes it easier for you to synchronize with the work of others, track changes and also switching back to the old code when something gets messed up. Git and Subversion are the two most popular version control software. The first one is distributed in nature, while the second one is a centralized system. You should choose depending on the nature of the project and your development needs.
» Get started with Git
» Subversion Tutorial
Development – NetBeans IDE for PHP
It’s time to leave the good old Dreamweaver and go for an integrated development environment or IDE. As the name suggests, an IDE gives you all the facilities like debugging, testing, documentation, version control, deployment in a single environment. There are a lot of IDEs to choose from, but you should definitely try out NetBeans. It’s very user-friendly, has great code-assistance(for HTML/CSS and JavaScript as well), small footprint on system resources and absolutely free! You can add/remove plugins from their online plugin repository to make it more useful.
Project Management – MyCollab
MyCollab is a multi-purpose solution which features tools for customer relationship management, document management, and project management. MyCollab-Project includes many features, like a Gantt chart and milestones, time tracking, and issue management. It also supports agile development models with its Kanban board.
» Get MyCollab
What do you think of the list? Anything you might want to add? Any alternatives you prefer? Please share your thoughts in the comments section.
This is a very informative article about PHP development tools. A lot of developers are surely delighted with this very helpful resource. Thanks for sharing.
Xdebug is truly a tool to learn. PHPUnit is for testing and I generally do not like writing code for testing. NetBeans is very powerful. I need to check this for PHP. I have learned adv Java for web dev. and there I come to know about NetBeans
Very Good tutorial Site for php developer
SVN (Subversion) is not only great when you work with other developers on a project, but it is great for keeping track of changes to files, even if you’re the only developer. A lot better than continuously zipping up files and dating them.
Wow. This really a nice list. Thanks. I will definitely put these into some action. One thing I had a hard time finding awhile back was an online video editor for free.
thanks
I like subversion more than git.
Thanks… I probably should have mentioned Eclipse in this list too. Yes, PHP for Eclipse is very good too. Here is the link for anyone interested to explore it:
http://www.eclipse.org/pdt/
Nice list of PHP development tools. I use PHP for Eclipse as my IDE to work on PHP projects.