views:

214

answers:

8

Hello people,

I am given a task to convert a crappy(non-secure) hardcoded website into a good one using any good framework.

I have a good idea of PHP.

So can you help me in choosing a framework?

Also, do i need to learn about Model View Controller to use frameworks?

A: 

For most good frameworks on PHP, you do have to learn about MVC and its different variants. Also it has been a good practice for years now, and as a technology, it's very mature.

Good PHP frameworks for begginers are Drupal and CakePHP as you state in your tag. Did you hoped for that answer? CakePHP has lots of tutorials and help for beginners, and it will be the best until the next platform is launched.

Cheers!

jpabluz
-1 for Drupal as a framework for beginners! "Drupal.org is the official website of Drupal, an open source content management platform." - from their website
Shadi Almosri
Oh so true, don't mind me.
jpabluz
A: 

Look for the Zend framework, it is the leading one. you can start here: http://framework.zend.com/

good luck!

Shuky Kappon
+6  A: 

Codeigniter is pretty decent,

  • it has a small footprint so doesn't bloat your project too much
  • it is very well documented (one of the best out of the major ones)
  • Lots of pre built functions to help you on your way

Check it out here

Shadi Almosri
+1 for CodeIgniter, I came from a background in PHP and learning CodeIgniter was supereasy.
James
is there an inbuilt module in php framework that enables us to edit webpage content directly from the site (like an admin page) ? or do we need to code that too?
dineshbabu
A: 

There's lots around:

zendframework.com
solarphp.com
cakephp.com
codeigniter.com

to name a few. I've been using the Zend Framework recently.

wilksm
+1  A: 

http://www.symfony-project.org/
Symfony promotes several best practices, like HTML sanitization, form validation, and caching. Also, using Symfony will teach you the MVC approach.

Start here: http://www.symfony-project.org/jobeet/1_4/Doctrine/en/
This tutorial will expose you to most of the features in Symfony.

Also, there are several screencasts, including
http://www.symfony-project.org/screencast/admin-generator

Christopher Altman
symfony is quite good with good tutorials, as long as the user is happy with the command line they could do quite well with it.
Shadi Almosri
+1  A: 

You can choose whichever framework you want, and it will probably be better than the current solution. Some good ones include:

(All links point to the getting started documentation of respective framework)

All of them use the MVC-pattern, so it's a good idea to have a basic understanding of it. It's not too hard to grasp the basics, and it will be better organized than the current solutions even if you put logic in the controllers and/or views. After you get more used to it you'll learn where to put the logic to reduce duplication and unnecessary work.

PatrikAkerstrand
+3  A: 

Yes you definitely need to learn about MVC.

Without it's knowledge you will not be able to accept the framework properly.

Zend, CakePHP and symfony are the most popular ones. It depends what type of functionality and features do you need.

IMO you should have a look at cakePHP, it is easy and help you develop applications rapidly.

Gaurav Sharma
+1 for CakePHP, very easy to start with, good documented (cookbook), readable source code
sibidiba
+1  A: 

dont choose a framework because someone suggest... first think what are u building. then check which framewroks gives u supporting lib for that kinda applications..

Some Frameworks tend to be heavy since it comes with all installed (core)libs(cakephp).. some u can install only libs u want(zend).

do your research based on the app u gonna build

i would suggest cakephp.. have been loving it ever since i am on it..

Harsha M V
cool.. thanks..
dineshbabu