CodeIgniter is very well-suited to those beginning PHP web development, and who are tired of writing the same code over and over (like authentication mechanisms). It is a very good choice for those looking for a framework that will not try to "dictate" how their application is designed and which choices are made. Situations where highly modular code is required and where more advanced features like queuing and hooking are needed are situations where CodeIgniter is not a good choice. More modern frameworks like CakePHP and Laravel are much better-suited.
CodeIgniter is an MVC framework that allows us to organize our code in a manner that it is easier to maintain and update. If you are working in a team environment and building an application or website like our dashboard, then CodeIgniter is a great solution.
Faced some issue of session management, so that's why we used the Core Session library for that. It would be great if we could improve it a little bit.
Frameworks provide the option to setup all getters/setters, so having this option in it is a great idea.
There isn't a whole lot to dislike about the framework, honestly. If I am forced to say something is that sometimes the authors change the directory layout and it's not always easy to deal with. That being said, I've never not been able to upgrade within a few hours.
Sometimes using the artisan CLI - it requires additional tweaking to get it running on non-standard application rollouts.
Codeigniter's syntax patterns are expressive and elegant. Unit testing support. Well documented. but as CodeIgniter tries to retain backward compatibility with PHP 4, here comes Laravel to the rescue. It has good features and it is updated. Wikipedia has mentioned, “according to a March 2015 developer’s survey on PHP frameworks popularity, Laravel was listed as the most popular PHP framework of 2015, followed by Symfony2, Nette, CodeIgniter, Yii2, and others.
Originally, it was a decision between Zend, CodeIgniter, and CakePHP for me. I chose CakePHP and used it as my main PHP framework for at least a couple of years before noticing and giving Laravel a fair try. Ultimately I selected Laravel because I felt it fit with my preferred development style, it utilized many of the modern best-practices I wanted to follow, and I felt that it allowed me to build better things in less time that seemed more maintainable. I have used, and still do use, Symfony directly for certain things, but I think of it (and use it) more as a code library than as a full application framework. When I'm building a web application, I tend to prefer Laravel.
CodeIgniter has been a very good alternative for developing API endpoint for our Android applications and we received very good output through CodeIgniter.
Because the source code is smaller but comes with MVC pattern, it has the functionality to develop an application faster with MVC strategy.