blob: 0294cef4e7c652410c561df588c8753ea7856df7 [file] [log] [blame]
adminb0dd10f2006-08-25 17:25:49 +00001<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html>
3<head>
4
Derek Allard404e35d2007-08-07 01:00:45 +00005<title>CodeIgniter User Guide : CodeIgniter at a Glance</title>
adminb0dd10f2006-08-25 17:25:49 +00006
7<style type='text/css' media='all'>@import url('../userguide.css');</style>
8<link rel='stylesheet' type='text/css' media='all' href='../userguide.css' />
9
admin17a890d2006-09-27 20:42:42 +000010<script type="text/javascript" src="../nav/nav.js"></script>
admin2296fc32006-09-27 21:07:02 +000011<script type="text/javascript" src="../nav/prototype.lite.js"></script>
admin17a890d2006-09-27 20:42:42 +000012<script type="text/javascript" src="../nav/moo.fx.js"></script>
Derek Allardb3412372007-10-25 12:15:16 +000013<script type="text/javascript" src="../nav/user_guide_menu.js"></script>
adminb0dd10f2006-08-25 17:25:49 +000014
15<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
16<meta http-equiv='expires' content='-1' />
17<meta http-equiv= 'pragma' content='no-cache' />
18<meta name='robots' content='all' />
19<meta name='author' content='Rick Ellis' />
Derek Allardd2df9bc2007-04-15 17:41:17 +000020<meta name='description' content='CodeIgniter User Guide' />
adminb0dd10f2006-08-25 17:25:49 +000021
22</head>
23<body>
24
25<!-- START NAVIGATION -->
26<div id="nav"><div id="nav_inner"><script type="text/javascript">create_menu('../');</script></div></div>
27<div id="nav2"><a name="top"></a><a href="javascript:void(0);" onclick="myHeight.toggle();"><img src="../images/nav_toggle.jpg" width="153" height="44" border="0" title="Toggle Table of Contents" alt="Toggle Table of Contents" /></a></div>
28<div id="masthead">
29<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
30<tr>
Derek Allard60ca9b72007-07-12 19:53:27 +000031<td><h1>CodeIgniter User Guide Version 1.5.4</h1></td>
adminc0d5d522006-10-30 19:40:35 +000032<td id="breadcrumb_right"><a href="../toc.html">Table of Contents Page</a></td>
adminb0dd10f2006-08-25 17:25:49 +000033</tr>
34</table>
35</div>
36<!-- END NAVIGATION -->
37
38
39<!-- START BREADCRUMB -->
40<table cellpadding="0" cellspacing="0" border="0" style="width:100%">
41<tr>
42<td id="breadcrumb">
Derek Allardd2df9bc2007-04-15 17:41:17 +000043<a href="http://www.codeigniter.com/">CodeIgniter Home</a> &nbsp;&#8250;&nbsp;
adminb0dd10f2006-08-25 17:25:49 +000044<a href="../index.html">User Guide Home</a> &nbsp;&#8250;&nbsp;
Derek Allardd2df9bc2007-04-15 17:41:17 +000045What is CodeIgniter?
adminb0dd10f2006-08-25 17:25:49 +000046</td>
Derek Allardbc030912007-06-24 18:25:29 +000047<td id="searchbox"><form method="get" action="http://www.google.com/search"><input type="hidden" name="as_sitesearch" id="as_sitesearch" value="codeigniter.com/user_guide/" />Search User Guide&nbsp; <input type="text" class="input" style="width:200px;" name="q" id="q" size="31" maxlength="255" value="" />&nbsp;<input type="submit" class="submit" name="sa" value="Go" /></form></td>
adminb0dd10f2006-08-25 17:25:49 +000048</tr>
49</table>
50<!-- END BREADCRUMB -->
51
52<br clear="all" />
53
54
55<!-- START CONTENT -->
56<div id="content">
57
Derek Allardd2df9bc2007-04-15 17:41:17 +000058<h1>CodeIgniter at a Glance</h1>
adminb0dd10f2006-08-25 17:25:49 +000059
60
Derek Allardd2df9bc2007-04-15 17:41:17 +000061<h2>CodeIgniter is an Application Framework</h2>
adminb0dd10f2006-08-25 17:25:49 +000062
Derek Allardd2df9bc2007-04-15 17:41:17 +000063<p>CodeIgniter is a toolkit for people who build web application using PHP. Its goal is to enable you to develop projects much faster than you could if you were writing code
adminb0dd10f2006-08-25 17:25:49 +000064from scratch, by providing a rich set of libraries for commonly needed tasks, as well as a simple interface and
Derek Allardd2df9bc2007-04-15 17:41:17 +000065logical structure to access these libraries. CodeIgniter lets you creatively focus on your project by
adminb0dd10f2006-08-25 17:25:49 +000066minimizing the amount of code needed for a given task.</p>
67
Derek Allardd2df9bc2007-04-15 17:41:17 +000068<h2>CodeIgniter is Free</h2>
69<p>CodeIgniter is licensed under an Apache/BSD-style open source license so you can use it however you please.
adminb0dd10f2006-08-25 17:25:49 +000070For more information please read the <a href="../license.html">license agreement</a>.</p>
71
72
Derek Allardd2df9bc2007-04-15 17:41:17 +000073<h2>CodeIgniter Runs on PHP 4</h2>
74<p>CodeIgniter is written to be compatible with PHP 4. Although we would have loved to take advantage of the better object handling
admine334c472006-10-21 19:44:22 +000075in PHP 5 since it would have simplified some things we had to find creative solutions for (looking your way, multiple inheritance),
76at the time of this writing PHP 5 is not in widespread use, which means we would be alienating most of our
adminb0dd10f2006-08-25 17:25:49 +000077potential audience. Major OS vendors like RedHat have yet to support PHP 5, and they are unlikely to do so until 2007, so
Derek Allardd2df9bc2007-04-15 17:41:17 +000078we felt that it did not serve the best interests of the PHP community to write CodeIgniter in PHP 5.</p>
adminb0dd10f2006-08-25 17:25:49 +000079
Derek Allardd2df9bc2007-04-15 17:41:17 +000080<p>Note: CodeIgniter will run on PHP 5. It simply does not take advantage of any native features that are only available in that version.</p>
adminb0dd10f2006-08-25 17:25:49 +000081
Derek Allardd2df9bc2007-04-15 17:41:17 +000082<h2>CodeIgniter is Light Weight</h2>
adminb0dd10f2006-08-25 17:25:49 +000083<p>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.
84Additional libraries are loaded dynamically upon request, based on your needs for a given process, so the base system
85is very lean and quite fast.
86</p>
87
Derek Allardd2df9bc2007-04-15 17:41:17 +000088<h2>CodeIgniter is Fast</h2>
89<p>Really fast. We challenge you to find a framework that has better performance then CodeIgniter.</p>
admin25f6fca2006-09-23 01:23:14 +000090
91
Derek Allardd2df9bc2007-04-15 17:41:17 +000092<h2>CodeIgniter Uses M-V-C</h2>
93<p>CodeIgniter uses the Model-View-Controller approach, which allows great separation between logic and presentation.
adminb0dd10f2006-08-25 17:25:49 +000094This is particularly good for projects in which designers are working with your template files, as the code these file contain will be minimized. We describe MVC in more detail on its own page.</p>
95
Derek Allardd2df9bc2007-04-15 17:41:17 +000096<h2>CodeIgniter Generates Clean URLs</h2>
97<p>The URLs generated by CodeIgniter are clean and search-engine friendly. Rather than using the standard "query string"
98approach to URLs that is synonymous with dynamic systems, CodeIgniter uses a segment-based approach:</p>
adminb0dd10f2006-08-25 17:25:49 +000099
100<code>www.your-site.com/<var>news</var>/<dfn>article</dfn>/<samp>345</samp></code>
101
102<p>Note: By default the index.php file is included in the URL but it can be removed using a simple .htaccess file.</p>
103
Derek Allardd2df9bc2007-04-15 17:41:17 +0000104<h2>CodeIgniter Packs a Punch</h2>
105<p>CodeIgniter comes with full-range of libraries that enable the most commonly needed web development tasks,
admindede2732006-10-28 19:02:43 +0000106like accessing a database, sending email, validating form data, maintaining sessions, manipulating images, working with XML-RPC data and
107much more.</p>
adminb0dd10f2006-08-25 17:25:49 +0000108
Derek Allardd2df9bc2007-04-15 17:41:17 +0000109<h2>CodeIgniter is Extensible</h2>
admindede2732006-10-28 19:02:43 +0000110<p>The system can be easily extended through the use of plugins and helper libraries, or through class extensions or system hooks.</p>
111
adminb0dd10f2006-08-25 17:25:49 +0000112
Derek Allardd2df9bc2007-04-15 17:41:17 +0000113<h2>CodeIgniter Does Not Require a Template Engine</h2>
114<p>Although CodeIgniter <em>does</em> come with a simple template parser that can be optionally used, it does not force you to use one.
admin25f6fca2006-09-23 01:23:14 +0000115
admine334c472006-10-21 19:44:22 +0000116Template engines simply can not match the performance of native PHP, and the syntax that must be learned to use a template
adminb0dd10f2006-08-25 17:25:49 +0000117engine is usually only marginally easier than learning the basics of PHP. Consider this block of PHP code:</p>
118
119<code>&lt;ul><br />
120<br />
121&lt;?php foreach ($addressbook as $name):?><br />
122<br />
123&lt;li>&lt;?=$name?>&lt;/li><br />
124<br />
125&lt;?php endforeach; ?><br />
126<br />
127&lt;/ul></code>
128
129<p>Contrast this with the pseudo-code used by a template engine:</p>
130
131<code>&lt;ul><br />
132<br />
admine334c472006-10-21 19:44:22 +0000133{foreach from=$addressbook item="name"}<br />
adminb0dd10f2006-08-25 17:25:49 +0000134<br />
135&lt;li>{$name}&lt;/li><br />
136<br />
137{/foreach}<br />
138<br />
139&lt;/ul></code>
140
admine334c472006-10-21 19:44:22 +0000141<p>Yes, the template engine example is a bit cleaner, but it comes at the price of performance, as the pseudo-code must be converted
adminb0dd10f2006-08-25 17:25:49 +0000142back into PHP to run. Since one of our goals is <em>maximum performance</em>, we opted to not require the use of a template engine.</p>
143
adminb0dd10f2006-08-25 17:25:49 +0000144
Derek Allardd2df9bc2007-04-15 17:41:17 +0000145<h2>CodeIgniter is Thoroughly Documented</h2>
adminb0dd10f2006-08-25 17:25:49 +0000146<p>Programmers love to code and hate to write documentation. We're no different, of course, but
admine334c472006-10-21 19:44:22 +0000147since documentation is <strong>as important</strong> as the code itself,
adminb0dd10f2006-08-25 17:25:49 +0000148we are committed to doing it. Our source code is extremely clean and well commented as well.</p>
149
150
Derek Allardd2df9bc2007-04-15 17:41:17 +0000151<h2>CodeIgniter has a Friendly Community of Users</h2>
admindede2732006-10-28 19:02:43 +0000152
153<p>Our growing community of users can be seen actively participating in our <a href="http://www.codeigniter.com/forums/">Community Forums</a>.</p>
154
155
adminb0dd10f2006-08-25 17:25:49 +0000156</div>
157<!-- END CONTENT -->
158
159
160<div id="footer">
161<p>
162Previous Topic:&nbsp;&nbsp;<a href="../installation/upgrading.html">Upgrading from an Older Version</a>
163&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
164<a href="#top">Top of Page</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
165<a href="../index.html">User Guide Home</a>&nbsp;&nbsp;&nbsp;&middot;&nbsp;&nbsp;
Derek Allardd2df9bc2007-04-15 17:41:17 +0000166Next Topic:&nbsp;&nbsp;<a href="features.html">CodeIgniter Features</a>
Derek Allardc6441282007-07-04 23:54:32 +0000167</p>
Derek Allardd2df9bc2007-04-15 17:41:17 +0000168<p><a href="http://www.codeigniter.com">CodeIgniter</a> &nbsp;&middot;&nbsp; Copyright &#169; 2007 &nbsp;&middot;&nbsp; <a href="http://ellislab.com/">Ellislab, Inc.</a></p>
adminb0dd10f2006-08-25 17:25:49 +0000169</div>
170
171</body>
172</html>