PHP: Why You Need To Consider Phalcon
Sean McGowanApril 13th, 20174 minute read
Sean is a technical researcher & writer at Codal, authoring blog posts on topics ranging from UX design to the Internet of Things. Working alongside developers, designers, and marketers, Sean helps support the writing team to ensure Codal produces engaging web content of the highest quality. When not writing about the latest innovations in app design, Sean can be found cooking, watching old movies, or complaining about the shortcomings of his favorite Philadelphia sports teams.
It’s not hard to see why PHP MVC is so popular with and developers: PHP can be seamlessly embedded in HTML, and when an MVC framework is implemented, the detachment between the front- and back-end lends itself to the development of discrete modules.
These modules are easy for the developer to edit, and can even be repurposed in later projects to save time and money.
But the industry standard for web development is not without its flaws. If it's a sizable project you’re working on, you might have to get creative with your workarounds, like coding your own MVC system from scratch, or at least significantly editing an existing one.
These ad-hoc methods work, but they can be cumbersome, tedious, and most of all time-consuming. Luckily, there’s a more robust solution available, one that’s clearly superior from both a technical and business perspective.
Developers know PhalconPHP as an MVC framework that’s written in C, but used for PHP. It’s supplied as a compiled PHP Extension, which means it can perform at lightening-fast speeds while consuming very little memory.
The fact that PhalconPHP is written in C makes it a bit of an outlier—most MVC frameworks are written in PHP, which, long story short, means you’re sacrificing performance for a more transparent system.
What you’re not sacrificing with the speed of PhalconPHP? Functionality. PhalconPHP’s framework offers a comprehensive selection of facilities. From routing systems to an autoloader, it packages every component a developer needs to construct a high-quality web solution.
PhalconPHP vs. The Competition
Developers usually classify MVC frameworks into two distinct categories: full-stack or micro.
Full-stack frameworks, like CakePHP or Derby, offer a high level of functionality, but often consume more resources and are bogged down by lengthy run times.
In contrast, micro-frameworks are speedier, and thus allow for faster re-tuning and refinement. With the high-performing speeds however, comes a lack in functionality that makes them non-deal for higher-load projects.
Where does PhalconPHP fit into these? The short answer is both: developers can create both full-stack or micro solutions in Phalcon.
However, when utilizing PhalconPHP as a micro application, you won’t have to sacrifice as much of the functionality as you would in other frameworks. Micro applications are where PhalconPHP distinguishes itself from the rest of the competition.
Phalcon also utilizes the most recent versions of PHP, as it takes platform security very seriously. For example, Phalcon 3.0 deprecated PHP 5.3 and 5.4, meaning upcoming releases of Phalcon won’t support those languages.
Other frameworks that support outdated versions of PHP have to use limited namespace, and can’t offer the same level of functionality in the core framework.
While PhalconPHP boasts a rare combination of both speed and high-level functionality, the framework is not without disadvantages. Its nature as a compiled C extension, for example, is a bit of a double-edged sword.
As I mentioned earlier, the fact that PhalconPHP is C-based, and not written in PHP, means you don’t have to include a multitude of PHP files that an interpreter must run through on every request. This makes PhalconPHP significantly faster than other PHP MVC frameworks.
But the drawback of PhalconPHP as a compiled C extension is its rigidity. It's difficult to edit its code, which means bug-squashing within Phalcon can provide a bit of a headache.
The good news is that this problem was notably alleviated in later versions of Phalcon: Phalcon 2 and Phalcon 3. Both versions allow for a developer to write extensions to Phalcon via a language called Zephir.
Another, less severe hindrance that PhalconPHP could pose is also a result of one of its best qualities: it’s free, unconfined structure places few regulations on the user. The downside to this liberty is that developers may have to write the paths to each directory manually.
While (like all frameworks) Phalcon has its disadvantages, its overall superiority has resulted in the framework being used by some of the best web design and development companies in the industry today.
Overall, PhalconPHP offers a robust, open source, full stack framework that simultaneously offers high-level functionality while optimizing performance. It’s a platform that’s rapidly growing—soon it will be indispensable to the entire web and software development industry.