CodeIgniter - 应用程序架构


CodeIgniter应用程序的架构如下所示。

CodeIgniter的架构
  • 如图所示,每当有请求来到CodeIgniter时,它首先会转到index.php页面。

  • 第二步,路由会决定是否将该请求传递给step-3进行缓存,或者将该请求传递给step-4进行安全检查。

  • 如果请求的页面已经在Caching中,则Routing会将请求传递到步骤 3,并将响应返回给用户。

  • 如果请求的页面不存在于缓存中,那么路由会将请求的页面传递到步骤4进行安全检查。

  • 在将请求传递给应用程序控制器之前,会检查所提交数据的安全性。安全检查后,应用程序控制器加载必要的模型、库、助手、插件脚本并将其传递给View

  • 视图将使用可用数据呈现页面并将其传递给缓存。由于之前请求的页面没有被缓存,所以这次它将被缓存在Caching中,以便为将来的请求快速处理该页面。

目录结构

下图显示了 CodeIgniter 的目录结构。

目录结构

CodeIgniter 目录结构分为 3 个文件夹 -

  • 应用
  • 系统
  • 用户指南

应用

正如名称所示,应用程序文件夹包含您正在构建的应用程序的所有代码。这是您将在其中开发项目的文件夹。应用程序文件夹包含其他几个文件夹,解释如下 -

  • 缓存- 此文件夹包含应用程序的所有缓存页面。这些缓存的页面将提高访问页面的整体速度。

  • Config - 该文件夹包含用于配置应用程序的各种文件。在config.php文件的帮助下,用户可以配置应用程序。使用database.php文件,用户可以配置应用程序的数据库。

  • 控制器- 此文件夹包含应用程序的控制器。这是您的应用程序的基本部分。

  • Core - 该文件夹将包含您的应用程序的基类。

  • Helpers - 在此文件夹中,您可以放置​​应用程序的帮助程序类。

  • Hooks - 此文件夹中的文件提供了一种在不破坏核心文件的情况下利用和修改框架内部工作方式的方法。

  • 语言- 该文件夹包含与语言相关的文件。

  • - 此文件夹包含为您的应用程序开发的库的文件。

  • 日志- 此文件夹包含与系统日志相关的文件。

  • 模型- 数据库登录名将放置在此文件夹中。

  • Third_party - 在此文件夹中,您可以放置​​任何将用于您的应用程序的插件。

  • Views - 应用程序的 HTML 文件将放置在此文件夹中。

系统

该文件夹包含 CodeIgniter 核心代码、库、帮助程序和其他文件,有助于简化编码。这些库和助手在 Web 应用程序开发中加载和使用。

该文件夹包含所有 CodeIgniter 代码,组织到各个文件夹中 -

  • Core - 此文件夹包含 CodeIgniter 的核心类。不要修改此处的任何内容。您的所有工作都将在应用程序文件夹中进行。即使您的目的是扩展 CodeIgniter 核心,您也必须使用挂钩来实现,并且挂钩位于应用程序文件夹中。

  • 数据库- 数据库文件夹包含核心数据库驱动程序和其他数据库实用程序。

  • 字体- 字体文件夹包含与字体相关的信息和实用程序。

  • Helpers - helpers 文件夹包含标准 CodeIgniter 帮助程序(例如日期、cookie 和 URL 帮助程序)。

  • 语言- 语言文件夹包含语言文件。您现在可以忽略它。

  • - 库文件夹包含标准 CodeIgniter 库(帮助您处理电子邮件、日历、文件上传等)。您可以创建自己的库或扩展(甚至替换)标准库,但这些库将保存在application/libraries目录中,以将它们与保存在该特定文件夹中的标准 CodeIgniter 库分开。

用户指南

这是 CodeIgniter 的用户指南。它基本上是 CodeIgniter 网站上用户指南的离线版本。使用它,人们可以学习各种库、助手和类的功能。建议在 CodeIgniter 中构建您的第一个 Web 应用程序之前先阅读本用户指南。

除了这三个文件夹之外,还有一个重要的文件,名为“ index.php ”。在此文件中,我们可以设置应用程序环境和错误级别,并且可以定义系统和应用程序文件夹名称。如果您对要执行的操作没有足够的了解,建议不要编辑这些设置。