I've done a bit of work with CodeIgniter and a lot with straight PHP...

I had the opportunity to use asp.net mvc3 recently and was absolutely blown away with my productivity. Despite not "knowing" the framework, the combination of scaffolding + intellisense + code generation through the context menus left me feeling just as productive with asp.net as with PHP.

I've evaluated YII, CakePHP, symfony (a long time ago, pre 2.0), and Kohana... and while YII seems most promising none quite matched up to my experience with mvc3.

  • 2
    You're talking about intellisense ... but that isn't strictly speaking part of the "framework". It's part of the Visual Studio IDE. You could probably build something similar in emacs (or whatever). Scaffolding/code generation is a little bit more of a gray area. In theory you ought to be able to extend any framework to do this. You might look into WebMatrix which is supposed to support PHP. WebMatrix + PHP + Cake = bliss? – David Jun 17 '11 at 2:58
  • WebMatrix is by far the best free environment for developing PHP on Windows, but I've been scared of Cake after Rasmus did his performance presentation a few years ago. – red-dirt Jun 17 '11 at 10:30
  • Performance isn't really the only thing to think about when developing an application. The desire is to have something you can maintain and will perform well enough. If you can easily maintain a piece of software, that's often more important. You can also often optimize the slow parts when needed and just a small area of messy code. People have scaled rails apps way beyond what you might think would be possible on the framework! :) – Travis Sep 25 '11 at 2:15

If you're talking about total experience, I think phpStorm, http://www.jetbrains.com/phpstorm/, is the best IDE out there. It adds some of the features of Visual Studio as well as some of it's own. Now in terms of PHP framework that's similar to ASP.NET MVC, I haven't felt that any of them are that close. I feel like cakePHP is the most common, so likely easiest to get help on and be able to deliver something at the end of the day.

| improve this answer | |

Cakephp has scaffolding but it shouldn't be used for production. As far as IDE I am partial to NetBeans, its really great. I also use mercurial, and netbeans has the best mercurial support I've ever seen right out the box.

| improve this answer | |

I havent used aspmvc but ive done a lot with codeigniter. It really increases my productivity and cut the development time short. I cannot call it the most greatest framework but however for a typically shared hosting application which needs to be delivered quickly with a great many features codeigniter seems to be the best option.

Pros ive found

  1. Excellent documentation ive ever seen in frameworks
  2. Has a good amount of authentication libraries that works right out of the box
  3. Lots of 3rd party plugins which also works right out of the box
  4. Easy to extend upon the core classes and implement your own functionalities
  5. Very easy url routing
  6. Comes with a wide variety of Helpers
  7. Doesnt assume too much about a programmer and hence doesnt end up resulting stuff into its own hands
  8. Comes with caching

and many more

Cons ive found

  1. No native support for ajax
  2. No command line generators to build stubs
  3. File upload class which is native isnt of much help(it can however be extended and there are lots of 3rd party plugins for that)

THis is my assesment of codeigniter.

| improve this answer | |

Symfony is extremely powerful in the areas you mention (scaffolding, code-generation etc.). Having used CakePHP, CodeIgnitor (personally, my least favourite) and others, Symfony stands head and shoulders above them in my opinion. Used with the Symfony support in NetBeans or with Eclipse it is an exceptional framework

| improve this answer | |

Until you find an IDE for PHP which is half confortable and fast than Visual Studio for C#, I do not think you can really compare the experience working with ASP MV3 and a PHP framework.

That being said ASP MVC3 looks a lot like many JEE framework, the best match to me would be Play Framework.

PHP MVC frameworks tends to be inspired by JEE. In that regard I've played a bit with Synfony 2 and must say I was really impressed by it.

But then I do not think you can be as confortable with a PHP framework as ASP MV3.

| improve this answer | |

I wasn't sure if you were requesting an IDE or an MVC framework, but I wanted to share a new MVC for PHP that is very close to .NET.


Here's how it works:

Define your view model:


class MovieViewModel
    public $Id = 0;
    public $Title = "";
    public $Rating = '';
    public $ReleaseDate = '';

    public function __construct($id, $title, $rating, $releaseDate)
        $this->Id = $id;
        $this->Title = $title;
        $this->Rating = $rating;
        $this->ReleaseDate = $releaseDate;

Define your controller:


class HomeController
    public $MovieRepo;

    public function __construct()
        $this->MovieRepo = new MovieRepository(); // create an instance of our repo

    public function Index()
        $model = []; // create a variable to store our movies (don't actually need this, but it's nice)

        $movies = $this->MovieRepo->GetMovies(); // get data from our repo

        // do some transformations and populate our view model
        foreach ($movies as $movie)
            $model[] = new MovieViewModel(
                $movie->IsRRated ? 'R' : 'PG',
                $movie->ReleaseDate->format('F jS, Y')

        View::Render('views/home/index.php', null, $model); // call our view and send the model

Define your view:

<ul class="list-group">
foreach($Model as $movie)
    echo <<<HTML
        <li class="list-group-item">
            <strong>{$movie->Title}</strong> ({$movie->Rating}) - {$movie->ReleaseDate}

And, presto!

enter image description here

| improve this answer | |

Codeigniter its really too good, it is far from what THE Visual Studio is, but when we talk about, we talk abou an framework, lot of premolded functions to increase the time of development, it's really simple to learn, and simple to use, lot of plugins and etc...

When we talk abou an IDE, PHP really don't have one, i work with PHP at 3 years and never found, maybe i'm wrong at this point but actually, we don't have nothing to develop with a great IDE like asp, however, even without and great IDE, php it's really good!

| improve this answer | |
  • 4
    Zend Studio, Eclipse PDT, Netbeans for PHP, PhpStorm, Aptana Studio and Komodo IDE are all fantastic IDEs for PHP (just to name a few). – yannis Nov 17 '11 at 22:32

Not the answer you're looking for? Browse other questions tagged or ask your own question.