{"id":705,"date":"2014-10-03T20:26:00","date_gmt":"2014-10-04T03:26:00","guid":{"rendered":"http:\/\/www.jacksonleung.com\/blog\/?p=705"},"modified":"2014-10-03T20:36:54","modified_gmt":"2014-10-04T03:36:54","slug":"php-framework-plugin-evaluation","status":"publish","type":"post","link":"http:\/\/www.jacksonleung.com\/blog\/php-framework-plugin-evaluation\/","title":{"rendered":"PHP Framework Plugin Evaluation"},"content":{"rendered":"<p>Which one is the BEST framework? Well! There are many ways to benchmarking a framework, speed, adoption, usability and so on. Today, I want to examine the plugin community for these frameworks.<\/p>\n<p>I&#8217;ve pulled a list from\u00a0http:\/\/hybridauth.sourceforge.net\/plugins.html and\u00a0https:\/\/github.com\/opauth\/opauth\/wiki and I plan to review frameworks that are on both URLs, the reason being, is that I don&#8217;t believe it makes sense to code authentication systems anymore. It&#8217;s been done a trillion times before, why are we reinventing the wheel? If the framework isn&#8217;t listed on these two URLs, I&#8217;ll prematurely conclude that the community isn&#8217;t active enough to put them on the map.<\/p>\n<p>The frameworks that show up on both URLs is as follows:<\/p>\n<ul>\n<li>CakePHP<\/li>\n<li>CodeIgniter<\/li>\n<li>Laravel<\/li>\n<li>Symfony<\/li>\n<li>Yii<\/li>\n<li>Zend<\/li>\n<\/ul>\n<p>Here are the URLs I&#8217;m using to compare the plugin \/ extension libraries of each framework:<\/p>\n<ul>\n<li>CakePHP &#8211;\u00a0<a href=\"http:\/\/plugins.cakephp.org\/\">http:\/\/plugins.cakephp.org\/<\/a>\n<ul>\n<li>(656 Packages) (274 updated in 2014)<\/li>\n<\/ul>\n<\/li>\n<li>CodeIgniter &#8211;\u00a0<a href=\"http:\/\/getsparks.org\/\">http:\/\/getsparks.org\/<\/a>\n<ul>\n<li>(200 sparks) (5 updated in 2014)<\/li>\n<\/ul>\n<\/li>\n<li>Laravel &#8211;\u00a0<a href=\"http:\/\/packalyst.com\/\">http:\/\/packalyst.com\/<\/a>\n<ul>\n<li>(2,431 packages) \u00a0(1,546 packages found in parse) (1,107 updated in 2014)<\/li>\n<\/ul>\n<\/li>\n<li>Symfony &#8211;\u00a0<a href=\"http:\/\/knpbundles.com\/\">http:\/\/knpbundles.com\/<\/a>\n<ul>\n<li>(2,413 bundles) (2,143 updated in 2014)<\/li>\n<\/ul>\n<\/li>\n<li>Yii &#8211;\u00a0<a href=\"http:\/\/www.yiiframework.com\/extensions\/\">http:\/\/www.yiiframework.com\/extensions\/<\/a>\n<ul>\n<li>(1,678 extensions) (380 updated in 2014)<\/li>\n<\/ul>\n<\/li>\n<li>Zend &#8211;\u00a0<a href=\"http:\/\/modules.zendframework.com\/\">http:\/\/modules.zendframework.com\/<\/a>\n<ul>\n<li>(470 modules) (470 udpated in 2014)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<p>Not meant to draw any real conclusions, but it does give an idea of how active the community is, and sheer\u00a0amount pre-coded stuff out there. I&#8217;ve basically went through each site, and scrapped the urls, the followed the urls and parsed the resulting HTML for the date which the extension was updated. I haven&#8217;t prod any further than that, although at this point, I am hopeful that if I was on either the Symfony or the Laravel platform, I can look forward to a lot of pre-written code.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Which one is the BEST framework? Well! There are many ways to benchmarking a framework, speed, adoption, usability and so on. Today, I want to examine the plugin community for these frameworks. I&#8217;ve pulled a list from\u00a0http:\/\/hybridauth.sourceforge.net\/plugins.html and\u00a0https:\/\/github.com\/opauth\/opauth\/wiki and I plan to review frameworks that are on both URLs, the reason being, is that I &hellip; <\/p>\n<p class=\"link-more\"><a href=\"http:\/\/www.jacksonleung.com\/blog\/php-framework-plugin-evaluation\/\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;PHP Framework Plugin Evaluation&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-705","post","type-post","status-publish","format-standard","hentry","category-programming","entry"],"_links":{"self":[{"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/posts\/705","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/comments?post=705"}],"version-history":[{"count":11,"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/posts\/705\/revisions"}],"predecessor-version":[{"id":716,"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/posts\/705\/revisions\/716"}],"wp:attachment":[{"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/media?parent=705"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/categories?post=705"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.jacksonleung.com\/blog\/wp-json\/wp\/v2\/tags?post=705"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}