📜  描述 CodeIgniter 使用的 MVC 结构

📅  最后修改于: 2022-05-13 01:56:22.301000             🧑  作者: Mango

描述 CodeIgniter 使用的 MVC 结构

模型、视图和控制器 (MVC)模式由 CodeIgniter 来组织文件。这有助于我们在应用程序中维护数据、表示和流程。为了让事情更清楚,我们可以通过它们的基本定义来理解——

  • 模型管理应用程序的数据并帮助执行应用程序可能需要的任何特殊业务规则。
  • 视图是简单的文件,几乎没有逻辑,向用户显示通过控制器接收的信息。
  • 控制器充当桥梁,在视图(或正在查看它的用户)和数据存储之间来回编组数据。

在最基本的理解方式中,控制器和模型只是具有特定工作的类。它们不是您可以使用的唯一类类型,它们还构成了该框架设计使用方式的核心。他们甚至在/app目录中指定了用于存储控制器、模型、视图、帮助程序、配置等文件的目录,尽管您可以自由地将它们存储在任何您想要的位置,只要它们被正确命名。通过在下面详细说明模型、视图和控制器来更详细地讨论 MVC:

视图:视图是最简单的文件,通常是 HTML、CSS、Javascript、SVG 以及更多与前端相关的文件,其中包含非常少量的PHP。 PHP在视图文件中应该非常简单,通常只是显示变量的内容,或者循环一些项目并在表格中显示它们的信息。视图从控制器获取要显示的数据,视图通常存储在“ /app/Views”中,但如果组织不当,很快就会变得非常忙于管理。 CodeIgniter 不强制任何类型的视图使用它,但一个好的规则是在每个控制器的 Views 目录中创建一个新目录,以便与前端的处理变得容易且非常清晰。然后,通过方法名称命名视图,这样以后很容易找到它们。例如,一个联系人页面可能显示在一个名为 Contact 的控制器和一个名为 contact 的方法中。您可以将此方法的视图文件存储在“ /app/Views/Contact/Contact. PHP ”在其文件结构中的位置。这种文件和文件夹的组织方式非常适合作为一种基本习惯。有时您可能需要以不同的方式组织它,只要 CodeIgniter 可以找到要显示的文件,这不是问题。

CodeIgniter 应用文件夹中的 Views 文件夹

模型:模型的工作是通过方法为应用程序维护单一类型的数据,这可能是用户、博客文章、交易等。因此,模型的工作有两个主要部分,即:

  1. 在从数据库中提取或放入数据库时对数据实施业务规则。
  2. 处理数据库中数据的实际保存和检索。

对于许多开发人员来说,在确定执行哪些业务规则时会感到困惑。它只是意味着对数据的任何限制或要求都由模型处理。这可能包括在保存原始数据以满足标准和要求之前对其进行规范化,或者在将其交给控制器之前以某种方式格式化行/列。通过使用模型检查这些业务需求,您不会在多个控制器中重复代码或意外错过更新区域。模型通常存储在其文件结构中的“ /app/Models ”位置。

CodeIgniter 应用文件夹中的 Models 文件夹

控制器:控制器扮演着不同的角色,但最明显的一个是他们接收用户的输入,然后决定如何处理它。控制器工作:

  1. 大多数情况下,它涉及将数据传递给模型以保存它或从模型请求数据,然后将其传递给要显示的视图。
  2. 为了处理模型范围之外的特殊任务,加载了一些实用程序类,并且仅在需要时由控制器完成。
  3. 它还负责处理属于 HTTP 请求的所有内容——重定向、身份验证、网络安全、编码等。

在外行语言中,控制器是您确保人们被允许在那里的地方,并且他们以他们可以使用的格式获取他们需要的数据。控制器通常存储在文件结构中的“ /app/Controllers ”位置,尽管它们可以使用命名空间来根据开发人员的要求进行分组。

CodeIgniter 应用程序文件夹内的控制器文件夹