When comparing Phalcon vs CodeIgniter, the Slant community recommends Phalcon for most people. In the question“What are the best backend web frameworks?” Phalcon is ranked 10th while CodeIgniter is ranked 17th. The most important reason people chose Phalcon is:
Since the framework is and extension built in C it's extremely fast and efficient. It's actually one of the fastest PHP frameworks, and according to some benchmarks it's the fastest framework out there.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Extremely fast
Since the framework is and extension built in C it's extremely fast and efficient. It's actually one of the fastest PHP frameworks, and according to some benchmarks it's the fastest framework out there.
Pro Open source
Phalcon is open source and is available under the BSD License.
Pro Uses Volt template engine
The Volt template engine, which is embedded into Phalcon itself takes it's inspiration from the Jinja template engine and as such it's nice to look at, with a clear and understandable syntax.
Volt also compiles very fast, like Phalcon itself, so it avoids being a bottleneck for the framework's overall speed.
Pro Very flexible project structure
You can set up the base project as you want. It's very flexible
Pro Clean and light project code
Since the framework code is not in the project directory, the code is light and clean.
Pro Customizable with Zephir
Zephir is a high-level language designed to create PHP extensions easily by PHP programmers with no knowledge in C.
Zephir does this by compiling directly to C and then the C program is in turn compiled to be run as a PHP extension. This, coupled with the fact that Zephir's syntax is very similar to PHP makes it a perfect way for PHP developers to use it for customizing Phalcon.
Pro Loosely coupled components
Some components can be used as standalone packages like models, views, etc..
Pro Beginner-friendly
Setting up CodeIgniter is quick and easy. You can download the version you want from the CI homepage or directly pull the latest version from GitHub. After that, you unzip the contents to the directory that's required. The final step is to edit the config.php
to suit your needs and it's set up and ready for development.
There are also a lot of guides and tutorials from developers who have been using CI for a long time. This is because of the relative old age of the framework and the large community behind it.
Pro Lightweight
CodeIgniter has a small footprint, just 3MB and that's including the user guide.
Pro Well documented
The documentation is clear, structured and thorough. It explains both commonly used and CodeIgniter specific concepts and always with clear examples.
Pro Active community
Because it's relatively old and well-liked, it has an active community of developers behind it. It's used by a lot of websites in production.
Pro Open source
The MIT License (MIT)
CodeIgniter is open source and is distributed under the MIT license.
Pro Stable
CodeIgniter is tested by hundreds of thousand of developers that use it in production. This means that it's very hard for any bugs or problems to go unnoticed. Even when a new version is out, bugs are quickly found and patched up.
Pro Easy to use templating engine
CodeIgniter has it's own templating engine built-in. It's based on a mustache-like templating language which is easy to learn for new developers who have never seen it. While experienced developers will feel very comfortable using it.
Pro Output caching
CodeIgniter lets you cache the web pages in order to decrease loading times and increase efficiency and performance.
Pro CodeIgniter v4 is a complete rewrite
CI4 will be out soon & is a rewrite..
"CodeIgniter 4 is a rewrite of the framework and is not backwards compatible."
So it will support ALOT more newer functionality built-in.
Cons
Con Not for shared hosting
Phalcon needs root access to install the PHP extension which is written in C. Developers who plan on using Phalcon must use VPS or Cloud Hosting with root access available.
Con Require good programming skills
Not so easy to use if you want to gain the best from it.
Con Debugging requires knowledge of C
You need to be a C programmer to debug Zephir or C code. Or if Phalcon is not maintained anymore and you have a problem and don't have much skills in C, you will be hard-pressed to find a C programmer to fix it.
Con Outdated
CodeIgniter was first released during the times of PHP 4. This means that a lot of features that were added later to PHP are not available. Some of these features are:
- Support for namespaces
- Modular separation by default
- Procedural function helpers
While nowadays CodeIgniter can be used along the latest version of PHP, these features were not added so as not to mess with backward compatibility. They can still be used with CI, but it requires extending core files to make it work which is a waste of time and energy and requires advanced knowloedge of both PHP and CI.
Con No unit testing
Con It does not have basic functions
Some of the missing features include controller security, filters in forms and modoles, rules of validation, among others.