115 lines
4.0 KiB
ReStructuredText
115 lines
4.0 KiB
ReStructuredText
#######################
|
|
CodeIgniter at a Glance
|
|
#######################
|
|
|
|
CodeIgniter is an Application Framework
|
|
=======================================
|
|
|
|
CodeIgniter is a toolkit for people who build web applications using
|
|
PHP. Its goal is to enable you to develop projects much faster than you
|
|
could if you were writing code from scratch, by providing a rich set of
|
|
libraries for commonly needed tasks, as well as a simple interface and
|
|
logical structure to access these libraries. CodeIgniter lets you
|
|
creatively focus on your project by minimizing the amount of code needed
|
|
for a given task.
|
|
|
|
CodeIgniter is Free
|
|
===================
|
|
|
|
CodeIgniter is licensed under the MIT license so you can use it however
|
|
you please. For more information please read the
|
|
:doc:`license agreement <../license>`.
|
|
|
|
CodeIgniter is Light Weight
|
|
===========================
|
|
|
|
Truly light weight. The core system requires only a few very small
|
|
libraries. This is in stark contrast to many frameworks that require
|
|
significantly more resources. Additional libraries are loaded
|
|
dynamically upon request, based on your needs for a given process, so
|
|
the base system is very lean and quite fast.
|
|
|
|
CodeIgniter is Fast
|
|
===================
|
|
|
|
Really fast. We challenge you to find a framework that has better
|
|
performance than CodeIgniter.
|
|
|
|
CodeIgniter Uses M-V-C
|
|
======================
|
|
|
|
CodeIgniter uses the Model-View-Controller approach, which allows great
|
|
separation between logic and presentation. This is particularly good for
|
|
projects in which designers are working with your template files, as the
|
|
code these files contain will be minimized. We describe MVC in more
|
|
detail on its own page.
|
|
|
|
CodeIgniter Generates Clean URLs
|
|
================================
|
|
|
|
The URLs generated by CodeIgniter are clean and search-engine friendly.
|
|
Rather than using the standard "query string" approach to URLs that is
|
|
synonymous with dynamic systems, CodeIgniter uses a segment-based
|
|
approach::
|
|
|
|
example.com/news/article/345
|
|
|
|
.. note:: By default the *index.php* file is included in the URL but it can
|
|
be removed using a simple *.htaccess* file.
|
|
|
|
CodeIgniter Packs a Punch
|
|
=========================
|
|
|
|
CodeIgniter comes with full-range of libraries that enable the most
|
|
commonly needed web development tasks, like accessing a database,
|
|
sending email, validating form data, maintaining sessions, manipulating
|
|
images, working with XML-RPC data and much more.
|
|
|
|
CodeIgniter is Extensible
|
|
=========================
|
|
|
|
The system can be easily extended through the use of your own libraries,
|
|
helpers, or through class extensions or system hooks.
|
|
|
|
CodeIgniter Does Not Require a Template Engine
|
|
==============================================
|
|
|
|
Although CodeIgniter *does* come with a simple template parser that can
|
|
be optionally used, it does not force you to use one. Template engines
|
|
simply can not match the performance of native PHP, and the syntax that
|
|
must be learned to use a template engine is usually only marginally
|
|
easier than learning the basics of PHP. Consider this block of PHP code::
|
|
|
|
<ul>
|
|
<?php foreach ($addressbook as $name):?>
|
|
<li><?=$name?></li>
|
|
<?php endforeach; ?>
|
|
</ul>
|
|
|
|
Contrast this with the pseudo-code used by a template engine::
|
|
|
|
<ul>
|
|
{foreach from=$addressbook item="name"}
|
|
<li>{$name}</li>
|
|
{/foreach}
|
|
</ul>
|
|
|
|
Yes, the template engine example is a bit cleaner, but it comes at the
|
|
price of performance, as the pseudo-code must be converted back into PHP
|
|
to run. Since one of our goals is *maximum performance*, we opted to not
|
|
require the use of a template engine.
|
|
|
|
CodeIgniter is Thoroughly Documented
|
|
====================================
|
|
|
|
Programmers love to code and hate to write documentation. We're no
|
|
different, of course, but since documentation is **as important** as the
|
|
code itself, we are committed to doing it. Our source code is extremely
|
|
clean and well commented as well.
|
|
|
|
CodeIgniter has a Friendly Community of Users
|
|
=============================================
|
|
|
|
Our growing community of users can be seen actively participating in our
|
|
`Community Forums <http://forum.codeigniter.com/>`_.
|