InfoWorld review: Fabulous PHP frameworks
/doubleclick_ads.js?2531"> Sign in
Applications Cloud Computing Data Explosion Developer World Mobilize Security Central Virtualization Adventures in IT
News Blog White Papers Webcasts Test Center Technologies Tech Watch Video Deep Dives More Feature The best hardware and software of the year
InfoWorld's 2011 Technology of the Year Awards recognize the best products at the forefront of today's top data center, desktop, mobile, and programming trends more
Latest Reviews The best hardware and software of the year InfoWorld review: Desktop virtualization made easy First look: Chrome OS beta's Achilles' heel is its reliance on the Web HTML5 in the browser: Canvas, video, audio, and graphics First look: Office 365 beta shows promise but lacks polish Test Center Home ChannelsAdventures in ITApplicationsCloud ComputingData ExplosionDeveloper WorldMobilizeSecurity CentralThe Industry StandardVirtualization Topic CentersArchitectureData ManagementGreen ITHardwareMac NetworkingOpen SourceSOAStorageWindows See all Technologies InfoClipzInfoClipz: Cloud computingInfoClipz: Green ITInfoClipz: Unified communicationsInfoClipz: Storage virtualizationInfoClipz: Server virtualization LineupsLatestNewsInfoClipzScreencastsAnalysisSponsored InfoWorld Video Home Face-to-FaceGaining Control of Your Enterprise Explosion See all Face-to-Face Virtual Conferences See all Virtual Conferences PopularAbout UsApps and ServicesAwardsEventsiGuidesIT JobsNewslettersQuizzesRSS and TwitterSlideshows Solution CentersDell EMC and Oracle 11G Innovative Efficiency Solutions CenterIBM Service Lifecycle ManagementIpswitch Managed File Transfer SolutionsIron Mountain Solving Evolving Information Management ChallengesManaging Risks in Virtualized and Cloud EnvironmentsRiverbed WAN OptimizationSymantec Small Mid Business SolutionsXerox Managed Print ServicesView all Solution CentersThe website development world is not ruled exclusively by PHP, but PHP's extensive use as a Web development language is undeniable. Although good statistics are difficult to come by, the trends.builtwith.com site places PHP's Web-wide use at approximately 35 percent -- first among Web development languages and platforms.
Consequently, it would be reasonable for a developer embarking on a new website construction project to select PHP as the site's primary building material. It would not be reasonable, however, for that developer to assemble the project from scratch. A PHP-based website usually requires more than PHP code. There's HTML for the page layout, CSS for its style, SQL for its back-end database, and JavaScript for client-side responsiveness. That's quite a fray to jump into unarmed.
[ Also on InfoWorld: See InfoWorld's review on eight PHP power tools | Follow the latest issues in software development with InfoWorld's Developer World newsletter. ]


Happily, you can arm yourself with one of the PHP-based Web development frameworks covered in this article. In the following pages, I'll look closely at the Zend Framework, CodeIgniter, CakePHP, and Symfony. I'll also give quick overviews of Qcodo, Lithium, Seagull, and Yii. All are open source frameworks, and all implement to one degree or another the MVC (model view controller) architecture pattern. In addition, all purport to help you build a more scalable and more easily maintainable Web application than you could otherwise create from scratch and, most importantly, do so in less time.
Meet the frameworks
The principal goal of these PHP frameworks is to accelerate the construction of Web applications. But some claim abilities beyond Web development. For example, you can use the Seagull framework to build command-line and GUI applications as well as Web applications. Although all the frameworks support the MVC design pattern, not all lock you into it. CodeIgniter's documentation, for example, states explicitly that applications may, if need be, employ only that framework's controller components.
Support for JavaScript and AJAX varies. Qcodo integrates JavaScript almost seamlessly; a single alteration to a control's action-handler method in Qcodo will change that control from being PHP-based to AJAX-based. Most other frameworks provide support for popular JavaScript libraries such as jQuery and Dojo. Lithium's JavaScript support is minimal; rather than support JavaScript directly, Lithium provides conversion of requests/responses to JSON (JavaScript Object Notation) for easy JavaScript manipulation.
Zend and Symfony are feature-rich frameworks brimming with packages covering a variety of technologies. For example, Zend's Zend_SOAP and Zend_XMLRPC packages encapsulate just about everything you need to build RPC-style SOAP server and client applications. Both Zend and Symfony, however, demand significant learning time as compared to the other frameworks reviewed here. In particular, learning Symfony requires learning YAML (Yet Another Markup Language), which Symfony employs extensively for configuration and data description.
Test Center Scorecard












Follow along as a mythical band of veteran IT professionals try to deploy high-definition (HD) telepresence on an enterprise-wide scale. Their biggest hurdle? They can't upgrade the network to handle more bandwidth. Other challenges include budget, reliability and user experience issues.
Read now »



Receive a weekly roundup about the art and science of software development.



About Us| Advertise| Contact Us| Newsletters| Privacy Policy| Reprints, Permissions, Licensing| Terms of Service The IDG Network CIO| Computerworld| CSO| DEMO| GamePro| Games.net| IDC| IDG| IDG Connect| IDG Knowledge Hub| IDG TechNetwork| IDG Ventures| InfoWorld| ITwhitepapers| IT World| JavaWorld| LinuxWorld| Macworld| Network World| PC World --> ©1994-2011 Infoworld, Inc.
View the Original article