Is CodeIgniter is recommended for a large web based ERP or Business Application? I want to use CodeIgniter for my future Project and I'm so confused whether to use it or not. Im so worried about in the long term process or lifetime of the application that it may crashed or produce a bug or error. I also worried about the performance of the framework when the data becomes larger and containing millions of records. I searched on the internet the answer but there is no exactly answer that will satisfy me. I think this question is important for the programmers like me who wanted to use PHP Framework for their large business application. I need an advice from you guys in order to decide whether to use it or not. thank you very much!
closed as off-topic by gnat, Scant Roger, Bart van Ingen Schenau Nov 29 '15 at 16:14
This question appears to be off-topic. The users who voted to close gave this specific reason:
I've used CodeIgniter 1.7 for a smaller scale site and based on that experience, I would not recommend it for an ERP system. The two pain points I had (which you or others may not) was that setting up automated testing (unit and integration) that was separated from the main code base was discouraged, and using it for database interaction was not very good compared to other frameworks.
To clarify on my second point, there is no ORM built-in, just a basic database-independent wrapper around some standard SQL functions. The nice thing a good ORM can give you is that your tables are set up based on your models or your models are set up based on your tables (more DRY) and operations like selection, creation, updating, and deletion are abstracted into model class methods rather than you having to define CRUD operations yourself. I think you would find this functionality useful for ERP software.
In terms of some of your other concerns, good automated testing and code reviews (and possibly pair programming) is the most feasible way known at this time for how to avoid introducing bugs or errors into your application. In terms of dealing with large datasets, your database and hardware would be more responsible for performance issues than any framework. Just make sure you know how to set up database indexes and avoid N + 1 queries.
I'd recommend giving ASP.NET MVC a try since the automated testing, ORM, and dependency injection tooling is better than with PHP. However, it's your project so it's your call.