Have your Cake
I am currently evaluating CakePHP, a Rails-like framework for PHP. In the words of the developers:
Cake is a rapid development framework for PHP which uses commonly known design patterns like ActiveRecord, Association Data Mapping, Front Controller and MVC. Our primary goal is to provide a structured framework that enables PHP users at all levels to rapidly develop robust web applications, without any loss to flexibility.
The framework started as a port of Rails to PHP, but as the developers point out in an interview in this article, they are able to think by themselves. They do not intend to mimic Rails as it evolves, but rather, they will evolve Cake independently.
At this point, some of you may be wondering “why don’t you just use Rails – the original?” I have poked around a little with Rails, but I confess that I am still pretty much a beginner when it comes to Ruby. Unfortunately, the reality is that we can’t switch to Ruby and Rails in the forseable future. All of our clients are on PHP or .NET and Bam is predominantly a PHP shop. Heck, we are finding it hard to switch from PHP4 to PHP5, much as we would like to. Most web hosting shops still only offer PHP4. At this point, it would also be pretty hard to get people who know Rails (We know one – Myles, but so far he’s resisted our attempts to bring him in. Hi Myles :P).
I’ll reserve my judgement on CakePHP until I’ve played with it more. It looks promising so far.