好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

CodeIgniter

CodeIgniter 是 一个 简单 快速 的 PHP  MVC框架。EllisLab 的工作人员发布了 CodeIgniter。许多企业尝试体验过所有 PHP MVC 框架之后,CodeIgniter 都成为赢家,主要是由于它为组织提供了足够的自由 支持 ,允许开发人员更迅速地工作。

自由意味着使用 CodeIgniter 时,您不必以某种方式命名 数据库 表,也不必根据表命名模型。这使 CodeIgniter 成为重构遗留 PHP 应用程序的理想选择,在此类遗留应用程序中,可能存在需要移植的所有奇怪的结构。

CodeIgniter 不需要大量 代码 (1.6.2 版本仅为 2.8 MB,其中的 1.3 MB 是可以 删除 的 用户 文档),也不会要求您插入类似于 PEAR 的庞大的库。它在 PHP 4 和 PHP 5 中表现同样良好,允许您创建可移植的应用程序。最后,您不必使用模板引擎来创建视图 — 只需沿用旧式的 HTML 和 PHP 即可。 

CodeIgniter 是一套给 PHP 网站开发者使用的应用程序开发框架和工具包。它提供单的接口和逻辑结构,其目的是使开发人员更 快速 地进行项目开发。使用 CodeIgniter可以减少 代码 的编写量,并将你的精力投入到项目的创造性开发上。

CodeIgniter是由Ellislab公司的CEORickEllis开发的。其核心框架是为这个程序特别编写的,而其他很多类库、辅助 函数 和子系统则来自于RickEllis和PaulBurdick编写的 内容 管理系统ExpressionEngine。来自RubyonRails的灵感启发我们创造了 一个 PHP 框架,并且将框架的概念引入到网络社区的一般意识中。

最新版本:CodeIgniter 当前稳定版本是 3.1.9  。

CodeIgniter入门非常容易,而且有很全面的 中文 版 用户 开发手册,在官方网站上可以了解到更多 内容 。

特性

开发框架优秀与否与它有多少特性没有太大的关系。你从特性中不能推断出 用户 的体验、不能体验到框架设计是不是直截了当,是不是智能。特性也不能告诉你框架 代码 的质量如何、 性能 如何、细节处理的如何、安全性如何。判断 一个 框架的办法是在使用中了解它。安装CodeIgniter很简单,所以,请你使用它。CodeIgniter的主要特性如下:

* 基于 MVC 体系

* 超轻量级

* 对数种 数据库 平台的全特性 支持 的 数据库 类

* Active Record 支持

* 表单与数据验证

* 安全性与 XSS 过滤

* Session 管理

* 邮件 发送类, 支持 附件,HTML 或文本 邮件 ,多协议(sendmail, SMTP 和 Mail)及更多。

* 图像处理类库(剪裁,缩放,旋转等)。 支持 GD,ImageMagick 和 BetPBM

* 文件 上传 类

* FTP 类

* 本地化

*  分页

* 数据加密

* 基准测试

* 全 页面 缓存

*  错误 日志

* 应用程序评测

* 日历类

* User-Agent 类

* Zip 编码类

* 模板引擎类

* Trackback 类

* XML-RPC 类库

* 单元测试类

* “ 搜索 引擎友好”的 URL

* 灵活的 URI 路由

* 支持 钩子和类扩展

* 大量的辅助 函数

她是 一个 小巧但 功能 强大的 PHP 框架,作为 一个 简单而“优雅”的工具包,她可以为 PHP 程序员建立 功能 完善的 Web 应用程序。如果你是 一个 与人共享主机并且为客户要求的期限而烦恼的开发人员,如果你已经厌倦了那些傻大笨粗的框架,那么 CodeIgniter 就是你所需要的,如果...

* 你想要 一个 小巧的框架。

* 你需要出色的 性能 。

* 你需要广泛兼容标准主机上的各种 PHP 版本和配置。

* 你想要 一个 几乎只需 0 配置的框架。

* 你想要 一个 不需使用命令行的框架。

* 你想要 一个 不需坚守限制性编码规则的框架。

* 你对 PEAR 这种大规模集成类库不感兴趣。

* 你不希望被迫学习一门模板语言(虽然可以选择你要求的模板解析器)。

* 你不喜欢复杂,热爱简单。

* 你需要清晰、完整的文档。

设计架构

CodeIgniter 的目标是在最小化,最轻量级的开发包中得到最大的执行效率、 功能 和灵活性。

为了达到这个目标,我们在开发过程的每一步都致力于基准测试、重构和简化工作,拒绝加入任何对实现目标没有帮助的东西。

从技术和架构角度看,CodeIgniter 按照下列目标创建:

动态实例化,在 CodeIgniter 中,组件的导入和 函数 的执行只有在被要求的时候才执行,而不是在全局范围。除了最小的核心资源外,不假设系统需要任何资源,因此缺省的系统非常轻量级。被 HTTP 请求所触发的事件,以及你设计的控制器和视图将决定它们什么时候被引用。 松耦合。耦合是指 一个 系统的组件之 间的 相关程度。越少的组件相互依赖那么这个系统的重用性和灵活性就越好。我们的目标是 一个 非常松耦合的系统。 组件专一性。专一是指组件有 一个 非常小的专注目标。在 CodeIgniter 里,为了达到最大的用途,每个类和它的 功能 都是高度自治的。 CodeIgniter 是 一个 动态实例化,高度组件专一性的松耦合系统。它在小巧的基础上力求做到简单、灵活和高 性能 。

模式

CodeIgniter 是基于模型-视图-控制器这一设计模式的。MVC 是一种将应用程序的逻辑层和表现层进行分离的 方法 。在实践中,由于表现层从 PHP 脚本中分离了出来,所以它允许你的网页中只包含很少的脚本。

模型(Model)代表你的数据结构。通常来说,你的模型类将包含取出、插入、更新你的 数据库 资料这些 功能 。 视图(View)是展示给 用户 的信息。 一个 视图通常是 一个 网页,但是在 CodeIgniter 中, 一个 视图也可以是 一个 页面 片段,如页头、页尾。它还可以是 一个 RSS 页面 ,或任何其它类型的“ 页面 ”。 控制器(Controller)是模型、视图以及其他任何处理 HTTP 请求所必须的资源之 间的 中介,并 生成 网页。 CodeIgniter 在 MVC 使用上非常宽松,因此模型不是必需的。如果你不需要使用这种分离方式,或是发觉维护模型比你想象中的复杂很多,你可以不用理会它们而创建自己的应用程序,并最少化使用控制器和视图。CodeIgniter 也可以和你现有的脚本合并使用,或者允许自行开发此系统的核心库,其目的是,使你可以以最适合你的方式工作。

CodeIgniter官方网站

官方网站: https://codeigniter.org.cn/

如果觉得 网站内容还不错,欢迎将 网站 推荐给程序员好友。

查看更多关于CodeIgniter的详细内容...

  阅读:42次

上一篇

下一篇

第1节:thinkPHP    第2节:johnny-five    第3节:Yii    第4节:WePY    第5节:ShareDB    第6节:RxJS    第7节:d3-dag    第8节:egg-react-ssr    第9节:Deep playground    第10节:Guess.js    第11节:hyperapp    第12节:Avalon.js    第13节:Inferno    第14节:HTTPie    第15节:ITPUB    第16节:dva    第17节:Quasar    第18节:graphql-yoga    第19节:Next.js    第20节:IronJS    第21节:mpvue    第22节:react    第23节:marked.js    第24节:SAPUI5    第25节:Neuro.js    第26节:enyo.js    第27节:wire.js    第28节:ui-router    第29节:vuera    第30节:tether    第31节:Mootools    第32节:graphql.js    第33节:flex.css    第34节:bacon.js    第35节:react-move    第36节:Mithril.js    第37节:Sugar.js    第38节:tabris.js    第39节:snabbdom    第40节:vuesion    第41节:anujs    第42节:Nautil    第43节:rax    第44节:Stencil.js    第45节:dio    第46节:compromise    第47节:crypto.js    第48节:imba    第49节:alt.js    第50节:svelte    第51节:react-sortable-hoc    第52节:react-snap    第53节:Fortune.js    第54节:Qatrix    第55节:KaTeX    第56节:preactjs    第57节:Lisk    第58节:Vanilla JS    第59节:es4x    第60节:styled-components    第61节:JustAuth    第62节:html2canvas    第63节:backbone    第64节:ml.js    第65节:virtual-dom    第66节:nw.js    第67节:umbrella.js    第68节:Walt    第69节:MXFlutter    第70节:FileSaver.js    第71节:Rivets.js    第72节:way.js    第73节:Flight.js    第74节:react-static    第75节:rethinkdb    第76节:Chromeless    第77节:i18next    第78节:Choo    第79节:jsMind    第80节:knockout.js    第81节:nuxt.js    第82节:Mpx    第83节:Vue    第84节:Meteor.js    第85节:Towxml    第86节:vue-resource    第87节:DefinitelyTyped    第88节:Aurelia    第89节:jsrender    第90节:Dahlia    第91节:tfjs-core    第92节:is.js    第93节:immer.js    第94节:STDLib    第95节:angular-seed    第96节:Cube.js    第97节:SproutCore    第98节:vecty.js    第99节:Maquette    第100节:Redux    第101节:Javascript Fun    第102节:moon    第103节:Ember    第104节:react-redux    第105节:falcor    第106节:normalizr    第107节:Automerge    第108节:PapaParse    第109节:LokiJS    第110节:Megalo    第111节:Selection.js    第112节:react-router    第113节:Manta    第114节:ccxt    第115节:CloudBoost    第116节:cool-admin    第117节:Vapper    第118节:ramda    第119节:Scala.js    第120节:limejs    第121节:Senna.js    第122节:fuelux    第123节:emotion    第124节:eeui    第125节:Riot.js    第126节:HooX    第127节:linaria    第128节:Keras.js    第129节:worker-dom    第130节:vite    第131节:Mermaid    第132节:Chameleon    第133节:quicklink    第134节:lovli.js    第135节:localForage    第136节:Cycle.js    第137节:Konva.js    第138节:ConvNetJS    第139节:IPFS    第140节:angular-dart    第141节:DojotoolKit    第142节:InversifyJS    第143节:cash    第144节:react-motion    第145节:hox    第146节:KISSY    第147节:mind.js    第148节:Leaflet.js    第149节:Omi    第150节:vue-router    第151节:graphql-js    第152节:vue-rx    第153节:asm-dom    第154节:weui.js    第155节:react-server    第156节:togetherjs    第157节:Duktape    第158节:Zebkit    第159节:MontageJS    第160节:Underscore.js    第161节:CanJS    第162节:Tesseract.js    第163节:sheetjs    第164节:Rocket    第165节:construct-js    第166节:rrweb    第167节:Neataptic    第168节:Flux    第169节:aframe    第170节:ThingJS    第171节:Midway    第172节:webdnn    第173节:Brain.js    第174节:UmiJs(五米)    第175节:reactxp    第176节:TensorFlow.js    第177节:Kbone    第178节:relay    第179节:H-ui    第180节:AngularJS    第181节:after.js    第182节:Dojo    第183节:jsoneditor    第184节:react-360    第185节:truffle    第186节:ale.js    第187节:pico.js    第188节:PathFinding.js    第189节:NodeList.js    第190节:interact.js    第191节:Immutable.js    第192节:cell    第193节:QuoJS    第194节:zepto.js    第195节:flutter-desktop-embedding    第196节:fre.js    第197节:Razzle    第198节:ocLazyLoad    第199节:eventproxy    第200节:vuex    第201节:angularfire2    第202节:socket.io    第203节:SkateJS    第204节:polymer    第205节:Electron    第206节:Nerv    第207节:Mind elixir    第208节:PeerJS    第209节:React Router    第210节:joi    第211节:single-spa    第212节:workbox    第213节:san    第214节:apify-js    第215节:Bootstrap    第216节:Angular    第217节:QucikUI    第218节:Expressjs    第219节:ThinkJS    第220节:Nest JS    第221节:Laravel    第222节:CodeIgniter    第223节:Zend Framework    第224节:CakePHP    第225节:Symfony    第226节:StartMVC