CodeIgniter 是什么?
最后更新于:2022-04-01 03:52:39
# CodeIgniter 概览
## CodeIgniter 是一个应用程序框架
CodeIgniter 是为 PHP 开发人员提供的一套 Web 应用程序工具包。 它的目标是能够让你比从零开始更加快速的完成项目,它提供了一套 丰富的的类库来满足我们日常的任务需求,并且提供了一个简单的 接口和逻辑结构来调用这些库。CodeIgniter 通过最小化你需要的代码量, 让你把更多的精力放到项目的创造性开发上。
## CodeIgniter 是免费的
CodeIgniter 通过 MIT 开源许可协议授权,你可以任意使用。 阅读 [许可协议](http://codeigniter.org.cn/user_guide/license.html) 的内容了解更多。
## CodeIgniter 是轻量级的
真正的轻量级。我们的核心系统只需要一些非常小的库,这和那些 需要大量资源的框架完全相反。而且,库都是根据请求动态加载, 你需要什么才加载什么,所以核心系统是个非常轻快的系统。
## CodeIgniter 是快速的
真正的快速。我们保证你很难找到一个比 CodeIgniter 性能更好的框架。
## CodeIgniter 使用 M-V-C 架构
CodeIgniter 使用了模型-视图-控制器 架构,它能很好的将逻辑层和表示层分离。 特别是对于那些使用了模板文件的项目来说更好,它能减少模板文件中的代码量。 我们在介绍 MVC 架构的页面有更详细的介绍。
## CodeIgniter 生成干净的 URL
CodeIgniter 生成的 URL 非常干净,而且对搜索引擎友好。不同于标准的 “查询字符串” 方法, CodeIgniter 使用了基于段的方法:
~~~
example.com/news/article/345
~~~
注意:默认 URL 中会包含 index.php 文件,但是可以通过更改 .htaccess 文件来去掉它。
## CodeIgniter 功能强大
CodeIgniter 拥有全面的类库,能满足大多数 Web 开发任务的需要, 譬如:访问数据库,发送邮件,验证表单数据,会话管理,处理图像, 处理 XML-RPC 数据,等等等等。
## CodeIgniter 是可扩展的
系统可以非常简单的通过你自己的类库和辅助函数来扩展,也可以通过 类扩展或系统钩子来实现。
## CodeIgniter 不需要模板引擎
尽管 CodeIgniter 自带了一个非常简单的可选的模板解析器,但并不强制你 使用模板。模板引擎的性能无法和原生的 PHP 代码相比,另外使用模板引擎 还需要学习一种新的语法,而使用原生 PHP 代码只需要你掌握基本的 PHP 语法即可。看下面的 PHP 代码:
~~~
<ul>
<?php foreach ($addressbook as $name):?>
<li><?=$name?></li>
<?php endforeach; ?>
</ul>
~~~
再来看看使用模板引擎的代码(伪代码):
~~~
<ul>
{foreach from=$addressbook item="name"}
<li>{$name}</li>
{/foreach}
</ul>
~~~
的确,模板引擎中的代码要清晰一点,但是它是以性能为代价的, 因为模板引擎中的伪代码必须要转换回 PHP 代码才能运行。 我们的一个目标是: 性能最大化 ,所以,我们决定不使用模板引擎。
## CodeIgniter 拥有全面的文档
程序员们都喜欢写代码而讨厌写文档,当然,我们也不例外。 但是由于文档和代码是一样重要的,所以我们尽力来做好它。 我们的代码非常简洁并且注释也非常全面。
## CodeIgniter 拥有一个友好的用户社区
你可以看到我们的社区用户在不断的增长,在 [社区论坛](http://forum.codeigniter.com/) 里活跃的参与着各种话题。