Help me pick my client's platform!
April 7, 2007 12:58 PM   Subscribe

How do I help a client pick between Java/JSP/Velocity/Freemarker and PHP/Smarty/etc? Is there an MVC approach in PHP?

I have a client that needs to figure out their approach to the next version of their website- it's a pretty big one, and crucial to their business; however, it won't be directly selling product.

They need to interface with some SOAP and XML-RPC stuff hosted by the internal company operations. The rest of their company runs on Java; I'm a java guy myself, but more in the POJO / Spring / JSF tradition than in fugly EJBs.

The web crew has a bit of PHP experience; they are really used to doing a mostly static site, and when we re-architect it, it will be a lot more dynamic, database driven, and probably Ajaxy.

I'm looking for help on the PHP side of things; is there an approach that's analogous to MVC style java coding in PHP? Is smarty an analog to Struts? Is there an accepted way to do that style of coding in PHP, and is it counterproductive? I'd like to leave them with an architecture that they will be happy to own and maintain, and will extend itself naturally; I'd like to find an architectural approach within PHP that takes the best of the Java / Component / MVC approaches without crippling their team's productivity.

Can I find this in PHP-land, or are they better off biting the bullet and moving to Java? Ruby, .NET, et al really aren't options here... Thanks!
posted by jenkinsEar to Computers & Internet (5 answers total) 3 users marked this as a favorite
For MVC in PHP, look at CakePHP, Symfony, and Mojavi. CakePHP, in my opinion, is the nicest to work with on small sites, Symfony is nicely sponsored, big, and useful but possibly slow? And Mojavi no experience.
posted by tmcw at 1:30 PM on April 7, 2007

Check out Code Igniter. I spent a while looking through the frameworks (installing CakePHP, symfony and Code Igniter) and CI was by far the best. It's lean, extremely well documented and fun to use.
posted by null terminated at 1:39 PM on April 7, 2007 [1 favorite]

I only understand half of what you're talking about, so I may be completely off-base here, but isn't this what Facebook's newly released Thrift does? It supports Java, PHP, Ruby, etc.
posted by niles at 1:56 PM on April 7, 2007

TMCW, Null Terminated, thanks- I'll check those out.

Niles, thanks as well- I think it's not exactly what I was looking for (and I realize my request was pretty jargon heavy...) It looks like Thrift is a good way to generate the services; I'm looking more for a framework to simplify developing the application that uses those services- the IT squad will be exposing the services for me, it's up to me to figure out the best way to use them.
posted by jenkinsEar at 2:26 PM on April 7, 2007

I use Symfony pretty extensively these days, IMHO it's better-supported than Cake, but Cake's the cool kid on the block.

I hadn't heard of CI before today, but I'm going to check that out. Thanks, null terminated.
posted by SpecialK at 5:06 PM on April 7, 2007

« Older Dietary Restrictions: No Carbs, No Cholestorol   |   Universal Contact Manager Newer »
This thread is closed to new comments.