It is an effective open-source PHP framework with a little impression, made by Rick Ellis in 2006.
CodeIgniter is not a PHP substitute. CodeIgniter is a PHP-driven structure, containing a grab-bag of libraries, helpers, plugins and other resources. It deals with a significant number of the more complex methodology and functions for which PHP is famous. It makes coding in PHP straightforward, quick and easy to use. It’s an excellent framework for adapting more about how PHP works as you code.
Impressed? If yes, then let’s dig more details into it…
Versions Of CodeIgniter
CodeIgniter has two versions:
The latest version is 3.x and old version is 2.x.
A good thing may come in small package, but it is loaded with enormous features. Below are they:
- Model-View-Controller Based System.
- Extremely Light Weight.
- Full Featured database classes with support for several platforms.
- Query Builder Database Support.
- Form and Data Validation: Gives a far-reaching structure approval and information preparing class that limits the measure of code you’ll compose.
- Security and XSS Filtering: Help you to create a secure application, processing input data for security.
- Session Management: Permits you maintain a user’s “state” and track their activity
- Email Sending Class: Sending emails.
- File Uploading Class: CodeIgniter’s File Uploading Class grants files to be transferred.
- FTP Class: CodeIgniter’s FTP Class grants records to be exchanged to a remote server.
- Localization: Provides functions to retrieve language files and lines of text for purposes of internationalization.
- Pagination: Pagination class is very easy to use, and it is 100% customizable.
- Data Encryption: It encoded utilizing the Mcrypt PHP expansion for the Encrypt Class to run.
- Benchmarking: Enabling the time difference between any two marked points.
- Full Page Caching: Highlights wrappers around the most prominent types of quick and dynamic caching.
- Error Handling: Permits error and debugging messages to be saved as text files.
- Application Profiling
- Calendaring Class: Enables you to dynamically create calendars.
- User Agent Class: Help to identify information about the browser, mobile device, or robot visiting your site.
- Zip Encoding Class: Permits you to create Zip archives.
- Template Engine Class: Perform simple text substitution for pseudo-variables contained within your view files.
- Trackback Class: Provides functions that enable you to send and receive Trackback data.
- XML-RPC Library: Permit you to send requests , or set up your own XML-RPC server to receive requests
- Unit Testing Class: Evaluate code to determine if it is producing the correct data type and result.
- Search-engine Friendly URLs
- Flexible URI Routing: Retrieve information about the re-routed segments
- Support for Hooks and Class Extensions
- Large library of “helper” functions
CodeIgniter is an Application Framework
The term ‘CodeIgniter’ is a toolbox for individuals who fabricate web applications utilizing PHP. It will probably empower you to create extends substantially speedier.
CodeIgniter is Light Weight
It is genuinely lightweight. The center framework requires just a couple of little libraries.
Uses M-V-C Approach
It utilizes the Model-View-Controller approach, which permits awesome partition amongst rationale and introduction.
Generates Clean URLs
The URLs produced by CodeIgniter are perfect and web search tool amicable. As opposed to utilizing the standard “query string” way to deal with URLs that is synonymous with dynamic frameworks, CodeIgniter utilizes a fragment-based approach:
It accompanies full-scope of libraries that empower the most usually required web improvement errands, such as
- Getting to a database
- Sending email
- Approving structure information
- Looking after sessions
- Controlling pictures
- Working with XML-RPC information and substantially more
Extensibility in CodeIgniter
The framework can be effectively reached out using your own particular libraries, aides, or through class expansions or system hooks.
The accompanying realistic shows how information streams all through the framework:
- The index.php fills in as the front controller, in stating the base assets expected to run CodeIgniter.
- The Router looks at the HTTP ask for to figure out what ought to be finished with it.
- In a cache file exists, it is sent straightforwardly to the program, bypassing the typical framework execution.
- Security. Prior to the application controller is stacked, the HTTP ask for and any client submitted information is separated for security.
- The Controller stacks the model, core libraries, helpers, and some other assets expected to process the particular demand.
It depends on the Model-View-Controller improvement design. MVC is a software approach that isolates application logic from an introduction.
- The Model speaks to your data structures. Regularly your model classes will contain functions that assist you to recover, embed, and refresh data in your database.
- A View will regularly be a web page, yet can likewise be a page section like a header or footer.
- The Controller fills in as a mediator between the Model, the View, and some other assets expected to process the HTTP ask for and produce a page.
It is a progressively instantiated, inexactly coupled framework with high segment peculiarity. It takes a stab at straightforwardness, adaptability, and elite in a little impression bundle.
CodeIgniter: For What?
- Structure with a little impression.
- Exceptional performance.
- A wide similarity with standard facilitating accounts that run an assortment of PHP renditions and designs.
- A framework that requires about zero configuration.
- A structure that does not expect you to utilize the command line.
- A framework that does not expect you to hold fast to prohibitive coding rules.
- Not interested in large-scale monolithic libraries like PEAR.
- Not have any desire to be compelled to take in a templating language.
- Favoring simple solutions.
- Clear, exhaustive documentation.
How to Install and Configure CodeIgniter?
Installation and Configure Instructions
- Unzip the package.
- Transfer the envelopes and documents to your server. Typically the index.php record will be at your root.
- Open the application/config/config.php record with a content manager and set your base URL. On the off chance that you mean to utilize encryption or sessions, set your encryption key.
- To connect a database, open the application/config/database.php file with a text editor and set your database settings.
PHP version 5.6 or more up to date is recommended.
A database is required for most web application programming. As of now, supported databases are:
- MySQL (5.1+) via the mysql (deprecated), mysqli and pdo drivers
- Oracle via the oci8 and pdo drivers
- PostgreSQL via the postgre and pdo drivers
- MS SQL via the mssql, sqlsrv (version 2005 and above only) and pdo drivers
- SQLite via the sqlite (version 2), sqlite3 (version 3) and pdo drivers
- CUBRID via the cubrid and pdo drivers
- Interbase/Firebird via the ibase and pdo drivers
- ODBC via the odbc and pdo drivers (you should know that ODBC is actually an abstraction layer)
Isn’t it easy? Don’t wait…just get started!