SitePoint Sponsor

User Tag List

Page 1 of 4 1234 LastLast
Results 1 to 25 of 99
  1. #1
    SitePoint Enthusiast
    Join Date
    Dec 2002
    Location
    United States
    Posts
    72
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Best overall framework for PHP 5?

    With no concerns for PHP 4 support, what in your opinions is the best PHP framework?

  2. #2
    Founder of Primal Skill Ltd. feketegy's Avatar
    Join Date
    Aug 2006
    Posts
    482
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I believe it depends on the project size. For small to mid-sized projects CodeIgniter and for large projects I think Zend Framework is the best. It gives your lot's of flexibility and it's not too complicated.

  3. #3
    SitePoint Evangelist tetsuo shima's Avatar
    Join Date
    Oct 2005
    Location
    Switzerland
    Posts
    597
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    You'll probably hear many many different opinions in the posts to come, and you'll probably end up confused, disoriented and dazed by the end of this thread, not to mention the expected posts in which members will tell you to build your own.

    You shouldn't ask about the best framework, but about the most used and supported one. And think long term.

    As it's a common question you're asking, you may not get as many answers as the first part of my comment may suggest, so you can do a little search on the subject and you'll find what has been said.

    And now, to answer your question, I'd go with the Zend Framework.

    The SEO Faq thread
    Dependency injection made easy: Phemto

  4. #4
    Non-Member
    Join Date
    Jan 2003
    Posts
    5,748
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    If you are not overly concerned about how well designed the framework is, it's self then go with the one that has the better documentation and is backed with unit tests. On the other hand, Cake PHP has one of the better community spirit and it's the one that is most blogged about as well.

    Then again, Zend Framework has the greater potential simply because of the people who are behind the framework, namely IBM for one. You can't simply make a choice based on a brief overview though.

  5. #5
    SitePoint Evangelist tetsuo shima's Avatar
    Join Date
    Oct 2005
    Location
    Switzerland
    Posts
    597
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by Dr Livingston View Post
    Then again, Zend Framework has the greater potential simply because of the people who are behind the framework, namely IBM for one. You can't simply make a choice based on a brief overview though.
    My very thought (sorry if it may seem cynical to some).
    The SEO Faq thread
    Dependency injection made easy: Phemto

  6. #6
    . shoooo... silver trophy logic_earth's Avatar
    Join Date
    Oct 2005
    Location
    CA
    Posts
    9,013
    Mentioned
    8 Post(s)
    Tagged
    0 Thread(s)
    There is no best never will be if there was there would only be one.
    End of discussion.

    Zend is more like a library of functions then a framework. You can use what you like and disregard the things you don't want. Unlike CakePHP or CodeIgnitor.
    Logic without the fatal effects.
    All code snippets are licensed under WTFPL.


  7. #7
    SitePoint Addict Jasper Bekkers's Avatar
    Join Date
    May 2007
    Location
    The Netherlands
    Posts
    282
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Pick one and stick with it. They're all alike anyway. These debates seem to come up every now and then and the only real conclusion is that there is no best framework. Your energy is better spent learning the first framework that comes along than actually debating whether it's worth to learn it anyway.

    Trying to answer your question: what does the best framework look like? Answer that question, in depth.
    Design patterns: trying to do Smalltalk in Java.
    I blog too, you know.

  8. #8
    SitePoint Zealot
    Join Date
    Jan 2005
    Location
    Romania, Iasi
    Posts
    119
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    There is no "best framework" out there, but a lot of good ones (cake, code igniter, zend). It all depends on your experience (with php and oop), how much and what code you have that you want to reuse and what you actually need from a framework. From simple to more complex you have igniter, cake and zend.

    I chose code igniter for the following reasons
    • easy to use
    • fast to understand (1-3 days)
    • already had an orm / active record implementation
    • active friendly and helpful community
    • doesn't force the controller - model - view chain; instead it lets you do as you think its necessary
    • it's fast
    • comes by default with a lot of libraries


    Let us know what you've decided, i, for one, would like to see another point of view.

  9. #9
    SitePoint Addict n0other's Avatar
    Join Date
    Feb 2005
    Posts
    290
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    It amazes me no one has mentioned Symfony yet. It has a bigger learning curve, but once you've been through it, you never look back.

  10. #10
    SitePoint Guru 33degrees's Avatar
    Join Date
    May 2005
    Posts
    707
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by blackdiamond View Post
    I chose code igniter for the following reasons
    • ...
    • already had an orm / active record implementation
    • ...
    This is a big problem I have with codeigniter. What it gives you is NOT an active record implementation, not even a "modified version", despite what the documentation says. It's not even really ORM, it's pretty much just a db abstraction layer, and the documentation stating otherwise further clouds understanding of an already confusing subject.

  11. #11
    SitePoint Wizard silver trophybronze trophy Cups's Avatar
    Join Date
    Oct 2006
    Location
    France, deep rural.
    Posts
    6,869
    Mentioned
    17 Post(s)
    Tagged
    1 Thread(s)
    Quote Originally Posted by 33degrees View Post
    This is a big problem I have with codeigniter. What it gives you is NOT an active record implementation, not even a "modified version", despite what the documentation says. It's not even really ORM, it's pretty much just a db abstraction layer, and the documentation stating otherwise further clouds understanding of an already confusing subject.
    True. It does just seem to work as stated for the simple stuff I was working on - and handles joins just fine.

    You don't have to use it though.

    I had one project with its !AR and one with my own model, both seemed ridiculously easy to create (given my talents). CI though claims it has a UnitTester, but it has only contains assertTrue() or assertFalse() as I could make out.

    I only used it creating crud-like admin modules, worked OK with Xajax too.

    Last time I delved into its guts, CI is not for OOP or PHP5 purists though.

  12. #12
    SitePoint Addict GeertDD's Avatar
    Join Date
    Feb 2005
    Location
    Belgium
    Posts
    334
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Kohana 2.0 got released today! Started as a fork of CI, but version 2 got almost completely rewritten in PHP5. Go check it out.

  13. #13
    SitePoint Zealot imagize's Avatar
    Join Date
    Oct 2004
    Location
    Australia
    Posts
    197
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by n0other View Post
    It amazes me no one has mentioned Symfony yet. It has a bigger learning curve, but once you've been through it, you never look back.
    I agree with this. I consider the Zend Framework to be more of a component library then a full blown framework. In fact most of the developers call it "Use only what you need". I have used components of the zend framework in a symfony application before with no issues.

    Lots of people look down on symfony because of the command line tools but once you get used to it it just speeds everything up. The admin generator and ajax helpers make projects a breeze and since I work by myself as the sole developer this is great for me.

    In production you can utilize symfony's built in caching combined with apc cache. I have never had problems with slow symfony apps. You can also disable symfony features you don't need.

    The only thing I dislike about symfony is the use of Propel 1.2 which uses creole. I cannot wait until Propel 1.3 is stable because it uses PDO instead.

    Also I dare say that symfony has the best documentation and community of all the frameworks. They have an official forum, irc channel, 2 google groups and a full book available for free. (You can purchase a hard copy).

  14. #14
    Founder of Primal Skill Ltd. feketegy's Avatar
    Join Date
    Aug 2006
    Posts
    482
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Symfony is good for complex websites/web apps.
    But I think using Symfony for a small-medium sized projects and you're the only developer (you don't have a team) then it's a little too hard. It gives you much flexibility, but as mentioned above the learning curve is really big.

    In order to use Symfony 100% you need to lay down a rock solid design for your project first, and then start to code it.

  15. #15
    SitePoint Guru dbevfat's Avatar
    Join Date
    Dec 2004
    Location
    ljubljana, slovenia
    Posts
    684
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    feketegy: I must disagree, in my own experience it's the complex web apps where Symfony doesn't always cut it, other than that it's very fit. It's learning curve is quite steep (which means you learn it fast).

    I also disagree about laying down a rock solid design before starting the development. The framework's structure provides a nice set of features and a firm project structure convention, all you need to learn is basically just what to throw where.

    regards

  16. #16
    SitePoint Member scorps's Avatar
    Join Date
    Jul 2004
    Location
    Estonia
    Posts
    12
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    CI and Cake are php4. Symphony uses Propel - not a really good ORM. Zend is rather a PHP5 library like PEAR.
    I'd suggest Qcodo. The best ORM there is and very good AJAX support, easy to learn and let's you customize it to suit your needs.( I created my own FrontController although out of the box it uses pagecontroller pattern)

  17. #17
    SitePoint Guru dbevfat's Avatar
    Join Date
    Dec 2004
    Location
    ljubljana, slovenia
    Posts
    684
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by scorps View Post
    Symphony uses Propel - not a really good ORM.
    Not necessarily; you can also use phpDoctrine, your own ORM or none at all. Besides, Propel is quite fine for projects that aren't too complex. The biggest two problems I've come across are performance issues with large (and I mean large) object graphs and not a very extensible design. It can (with large and complex project it will) get dirty, but until then you have a decent ORM which speeds up the development noticeably.

    regards

  18. #18
    SitePoint Enthusiast
    Join Date
    Aug 2006
    Posts
    41
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Thumbs up

    Quote Originally Posted by GeertDD View Post
    Kohana 2.0 got released today! Started as a fork of CI, but version 2 got almost completely rewritten in PHP5. Go check it out.
    +1 here... go for kohanaphp!
    hack me please! [url]http://localhost[url]

  19. #19
    SitePoint Enthusiast
    Join Date
    Aug 2007
    Location
    Hamilton, ON
    Posts
    52
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by dbevfat View Post
    feketegy: I must disagree, in my own experience it's the complex web apps where Symfony doesn't always cut it, other than that it's very fit. It's learning curve is quite steep (which means you learn it fast).

    I also disagree about laying down a rock solid design before starting the development. The framework's structure provides a nice set of features and a firm project structure convention, all you need to learn is basically just what to throw where.

    regards
    Lol steep learning curve means it's hard to learn :P

    I just started using CodeIgniter and I really like it. Only time will tell if I continue to like it though lol.

  20. #20
    SitePoint Member
    Join Date
    Feb 2007
    Posts
    9
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by jturmel View Post
    ...what in your opinions is the best PHP framework?
    Actually, I'm kinda surprised to see such questions to pop up here every week There can't and shouldn't be the one and the only best PHP framework.

    I have some C++ background and the usual practice for C++ development is to cherry pick from several frameworks and libraries. For example in of my projects used different components from STL, Boost, Ogre3D, Zthread, Cppsockets, Log4cpp, etc!

    And, I believe, this is how it should be for PHP as well. For example, I personally tend to use controller, ORM(ActiveRecord) and template engine(WACT atm, thinking about switching to {{macro}}) from Limb3, search from ZendFramework, image processing from ezComponets, mail stuff from SwiftMailer and some PEAR bits.

  21. #21
    SitePoint Guru dbevfat's Avatar
    Join Date
    Dec 2004
    Location
    ljubljana, slovenia
    Posts
    684
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by crhayes View Post
    Lol steep learning curve means it's hard to learn :P
    Well, not really, but it's a common misapprehension. Steep learning curve means you get knowledge fast as time passes.

  22. #22
    SitePoint Guru rageh's Avatar
    Join Date
    Apr 2006
    Location
    London, Formerly Somalia
    Posts
    612
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by GeertDD View Post
    Kohana 2.0 got released today! Started as a fork of CI, but version 2 got almost completely rewritten in PHP5. Go check it out.
    Although promising, the problem with Kohana is the lack of proper documention, without which it cannot compete with the other frameworks.
    ------------------

  23. #23
    SitePoint Addict
    Join Date
    Jun 2004
    Location
    Australia
    Posts
    381
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by n0other View Post
    It amazes me no one has mentioned Symfony yet. It has a bigger learning curve, but once you've been through it, you never look back.
    If it had propel 1.3 working with it I would be more inclined to spend more time on symfony. PDO and better datetime in 1.3 (and many other improvements).

    So for me atm its Zend/Propel/Smarty/HTML purifier. Its pretty easy to use those tools in combination and the code created with those tools is easy to understand.

  24. #24
    SitePoint Zealot shoorace's Avatar
    Join Date
    Jun 2005
    Location
    Florida
    Posts
    142
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Where can we get more resources on CakePHP opensource projects?

  25. #25
    SitePoint Member
    Join Date
    Jun 2007
    Posts
    15
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Quote Originally Posted by pfitz View Post
    If it had propel 1.3 working with it I would be more inclined to spend more time on symfony. PDO and better datetime in 1.3 (and many other improvements).

    So for me atm its Zend/Propel/Smarty/HTML purifier. Its pretty easy to use those tools in combination and the code created with those tools is easy to understand.
    You can use Propel 1.3 via a plugin or you can use Doctrine as your ORM if you would like.

    Symfony is ORM agnostic. You can use whatever you want.


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •