CakePHP 初学者教程:什么是 CakePHP 框架?

CakePHP 教程摘要

在本 CakePHP 教程中,我们将从头开始学习所有基本概念。本教程涵盖 CakePHP 的定义、历史、功能、文件夹结构和配置,以及 CakePHP 框架工作原理的简要说明。

什么是 CakePHP?

CakePHP的 是一个开源框架,用于快速开发和维护用 PHP 构建的 Web 应用程序。它基于 MVC 架构的概念,有助于使用更少的代码轻松简单地构建 PHP Web 应用程序。CakePHP 还可以帮助您将业务逻辑与数据层和表示层分开。

为什么要使用 CakePHP 框架?

以下是使用 CakePHP 框架的主要好处/优点:

  • Cake PHP 是迄今为止最快的 Web 开发平台之一。
  • CakePHP 允许开发人员增强对数据库和 SQL 查询的控制。
  • 它可以帮助用户开发强大的 Web 应用程序,而不会迅速失去环境灵活性。
  • 经验 PostgreSQL, SQLite, MySQL、PEAR-DB for ADODB,一个数据库抽象库。
  • 促进搜索引擎友好的 URL
  • 提供输入验证和清理工具等功能,确保应用程序的安全。
  • 使用熟悉的 PHP 语法进行模板化

CakePHP 的历史

现在,在本 CakePHP 教程中,我们将介绍 CakePHP 框架的历史:

年份 里程碑
2005 CakePHP 由 Michal Tatarynowicz 于 15 年 2005 月 XNUMX 日开发。
2005 CakePHP 在 MIT 许可下发布它并向社区开发者开放。
2005 Larry E Masters 接任首席开发人员。
2006 1.0 版本发布
2011 2 版本发布
2014 已发布第 3 版,该版完全废除了之前的版本。
2016 CakePHP 3.3.3 版发布,具有许多高级功能。
2019 3.7.9 版是最新发布的版本
2021 CakePHP 核心团队宣布 CakePHP 4.2.2 即将上市

CakePHP 的功能

以下是 CakePHP 的重要特性。

  • 活跃、友好的社区
  • MVC架构
  • 内置验证
  • 可从任何网站目录运行,只需涉及部分或不涉及 Apache 配置。
  • 模板引擎
  • 高速缓存 Opera系统蒸发散
  • 轻松的 CRUD 数据库交互。
  • 内置验证
  • Handlin 组件,例如电子邮件、Cookie、安全、会话和请求
  • 查看助手 JavaScript, 阿贾克斯、HTML 表单等

CakePHP 文件夹结构

现在,在这个 CakePHP 框架教程中,我们将了解 CakePHP 文件夹结构。

以下是 CakePHP 的文件夹结构:

描述
检测 此文件夹包含您的应用程序的测试用例。
Tmp 临时文件夹存储临时数据。
房屋出售 此文件夹帮助您存储 CakePHP,并且将安装其他应用程序依赖项。
Webroot 此 Webroot 存储所有您想要公开访问的文件。
箱子 bin 文件夹包含 Cake 控制台可执行文件。
日志 它包含您的日志文件,这取决于您的日志配置。
配置 config 文件夹存储 CakePHP 使用的配置文件
插件 此文件夹包含应用程序的插件。是存储应用程序使用的插件的地方。
SRC 它包含一个控制台任务和命令来管理您的应用程序。

Locale 存储国际化的字符串文件。

模型包含应用程序的表、实体和行为。

CakePHP 的配置

CakePHP 默认带有一个配置文件。它还允许您根据自己的需求进行修改。为此提供了一个名为“config”的文件夹。

变量名称 描述
调试 允许您更改 CakePHP 调试输出。
应用程序命名空间 帮助您查找下的应用程序类别。
App.baseUrl 如果不想在 CakePHP 中使用 Apache 的 mod_rewrite,请取消注释此关键字。
应用程序编码 此命令允许您定义应用程序使用的编码。
应用库 它是应用程序所在的基本目录,如果为假,则会自动检测。
App.fullBaseUrl 合格域名
应用程序根目录 它是一个 webroot 目录。
应用程序wwwRoot 到 Web 根目录的文件路径。
App.jsBaseUrl 公共 js 目录的路径。
应用程序路径 配置非基于类的资源的路径。
App.cssBaseUrl 它是 webroot 下公共 css 目录的 web 路径。
安全.盐 它是用于散列的随机字符串。
资产.时间戳 此变量允许您在使用适当的帮助程序时附加时间戳。

Cake- PHP 命名约定

Cake 遵循约定优于配置的理念。命名约定方法允许您组织 Web 应用程序的操作。在这种方法中,在命名文件时,名称中的多个单词必须用“_”分隔,在命名类时,必须使用驼峰式命名法。

MVC 部分必须遵循以下给出的语法:

文件名 班级名称 基类名称 地点
型号 文件名
表名的单数形式,扩展名为 .php 例如:order.php
采用驼峰式命名法的文件名,例如:Order 应用模型 /应用程序/模型
控制器 tablename_controller 带有 .php 扩展名,例如:ordcrs_controllcr.php 表名附加 Controller,例如:OrdcrsController 应用控制器 /应用程序/控制器
查看 控制器中的动作名称以 .ctp 为扩展名,例如:add.ctp 没有类;查看 c HTML 标签和 PHP。' /app/vuews/控制器名称

数据库配置

CakePHP 允许你配置数据库 配置/应用程序.php 文件。它提供了默认连接和提供的参数,您可以根据自己的选择进行修改。

重要参数如下:

数据库 数据库名称
端口(可选)
编码
用于连接服务器的 TCP 端口或 Unix 套接字。
时区 要设置的服务器时区。
架构 它可以帮助您指定可以使用的模式。
unix_socket 驱动程序使用此数据库通过 Unix 套接字文件进行连接。
SSL 密钥 这是 SSL 密钥文件的文件路径。
ssl_证书 这是 SSL 证书文件的文件路径。
ssl_ca 这是 SSL 证书颁发机构的文件路径。
历史记录 此术语可帮助您执行查询日志记录。
在里面 创建连接时应发送到数据库服务器的查询列表。
如果要使用保留字或特殊字符,则设置为 true

MVC 在 CakePHP 中如何工作?

现在,我们将在本 CakePHP 框架教程中学习 MVC 在 CakePHP 中的工作方式。

这是一种动态构建 Web 应用程序主要机制的方法。模型、视图和控制器相互独立。

CakePHP 中的 MVC 架构
CakePHP 中的 MVC 架构

Cake PHP 将操作分为三个部分:

  • 模型:用于所有数据库交互。
  • 视图:用于所有输出和显示。
  • 控制器:用于控制应用程序流程

以下是在 CakePHP 中使用 MVC 架构的步骤:

步骤1) 客户端或用户与视图交互

步骤2) 查看特定事件的警报控制器。

步骤3) 它向模型发送数据库请求,然后控制器更新模型。

步骤4) 模型警告视图它已经发生了变化。

步骤5) 视图接收模型数据并根据接收到的数据更新自身。

为什么使用 MVC?

  • CakePHP MVC 帮助您将业务逻辑与表示和数据检索分开。
  • 站点被分为多个逻辑部分,您可以使用特定的控制器来管理这些部分。
  • 在测试和调试应用程序时,任何开发人员都可以帮助您定位和纠正错误,而无需了解完整的代码细节。

使用 CakePHP 框架的缺点

  • CakePHP 的文档支持不够全面。
  • 要使用 CakePHP 软件,开发人员需要更新创建花式 URL 的默认路由,与其他 PHP 框架相比,这需要做更多的工作。
  • 与其他框架相比,CakePHP 采用单向路由。
  • 学习 PHP 框架并不容易。
  • 与 Ruby on Rails 等框架相比,提供单向路由是另一个缺点。

结语

  • CakePHP 是一个开源框架,它可以帮助简化 PHP 应用程序的开发和维护。
  • CakePHP 允许开发人员增强对数据库和 SQL 查询的控制。
  • 它由 Michal Tatarynowicz 于 15 年 2005 月 XNUMX 日开发
  • MVC 架构和内置验证是 CakePHP 最重要的特性
  • CakePHP 默认带有一个配置文件,您可以根据需要对其进行修改。
  • CakePHP 的命名约定方法允许您组织 Web 应用程序的操作。
  • CakePHP 允许您在 config/app.php 文件中配置数据库。
  • Cake PHP 将 MVC 操作分为三个部分:
  • 模型:用于所有数据库交互,视图:用于所有输出和显示,控制器:用于控制应用程序流程
  • 在 CakePHP 中使用 MVC 的最大优点是它可以帮助您将业务逻辑与表示和数据检索分开。
  • CakePHP 最大的缺点是 CakePHP 的文档支持不够全面。

总结一下这篇文章: