I know PHP and am just beginning with MySql (but plan to use ODBC). I don't need any books explaining that.

I am probably qualified to develop a simple web site, but aim at taking on quite ambitious apps. I imagine that almost all web apps have some commonality like security, scalability, etc (I have absolutely no idea how to distribute a data base or an app over server servers, for instance).

Since I can't foresee the exact nature of the applications which I might develop (other than that PHP & ODBC will be involved), is there any point in getting married to a framework, or should I just reinvent the wheel and personalize it to make it my own framework.

If an existing framework, then which one. The only help I can give is that I am not likely to do websites, portals, shoppings sites, etc, probably leaning more to asset tracking and data mining.

Accepted Answer

Using a framework saves you a ton of time and helps you to organise your app mroe logically.

If the app is small then frameworks like CodeIgniter or Kohana are ideal.

If you are building a bigger app that needs to scale the Symfony or possiby Zend are the ones to look at.

If you were to start your app in Symfony you would instanly get:

  • url rewriting using routes
  • a form framework for handling everything to do with your web forms
  • internationalisation and localisation
  • emailing
  • caching
  • admin area generator, to help you add data quickly
  • unit testing framework

Plus the whole framework is extendable and custmisable to suit your needs.

Starting without a framework you'd have to write all of this yourself. Or integrate several disparate open source modules.

Hope this helps.

Written by Jon Winstanley
This page was build to provide you fast access to the question and the direct accepted answer.
The content is written by members of the stackoverflow.com community.
It is licensed under cc-wiki