Have spent a week trying to wrap my head around Yii framework, but while I do get a sense of it’s elegance, I am finding the learning curve rather steep, compared to the 2 days I spent on Codeigniter. My background is of Unix systems programming (communication stacks), with no MVC exposure, and know only basic PHP (find it fairly simple & straight-forward).
I’ve considered the no-framework approach, but find it even more daunting given that, I’ve almost no web-development experience. A framework, at minimum would give guidance in terms of architecture & design.
I might be shooting myself in the foot, but with a tight deadline on ramp-up, and delivering a somewhat complex web-application, I need to get productive real fast.
So wondering if community can guide me, if Codeigniter 2.x, would be good choice for me, given the following requirements —
-
Easy to learn and able to deliver quickly, something that is functional. Thus needs to have extensive, easy-to-use documents, tutorials (beyond simple-blogs) and a very active community.
-
Framework needs to make it easy to integrate features like –
- User registration with captcha
- User verification using random verification key sent via mobile phone
- Send Email, short-message to mobile phone
- Integrate with Payment Gateway
- Have significant no. (close to a hundred) possible CRUD operations
- Doesn’t get in the way (if not making it easy) to work with AJAX, for things like timeline presentation – including audio-snippets, photographs, video-snippets
- Doesn’t get in the way (if not making it easy) for the web application to be made accessible on mobile devices s.a. smartphones
-
Has reasonable performance. Need not be the fastest, but performance is a concern, although secondary.
Of course, I do not need all the features on day-1, and willing to invest some time in reading/learning about the framework, but wouldn’t want to read an entire manual first.
Note that I’ve already searched the Codeigniter forums and found discussion on some of the required functionalities, however most of the interesting libraries seem to be available only on Codeigniter 1.7 and found little confirmation of those being available also for Codeigniter 2.1 ! Also, all Codeigniter books are for 1.7, and none for 2.1. Does that mean that 2.x doesn’t have enough adoption and community support ?
Yes. CodeIgniter 2 is a good choice.
is_ajax_request()function that’s really useful. Note: there used to be a problem with AJAX request expiring sessions. Not sure if that’s still an issue. As far as making it accessible for mobile-devices, you’ll find more issues on the front-end than the back.Many of the libraries you find may say that they were made for 1.7, but may work with 2.x You can try updating them yourself if necessary. We’d be glad to help. Note that “plugins” have been deprecated in CI 2, you’ll have to convert plugins to helpers or libraries (depending on your needs). CI 1.7 has a 3-year lead on CI 2. It’ll take some time for “the community” to catch up.
Hope this helps.