【一个php框架的简单实现,仅实现简单路由层】教程文章相关的互联网学习教程文章

Yii框架官方指南系列19——使用表单:创建表单【图】

编写 login 视图是很简单的,我们以一个 form 标记开始,它的 action 属性应该是前面讲述的 login 动作的URL。 然后我们需要为 LoginForm 类中声明的属性插入标签和表单域。最后, 我们插入一个可由用户点击提交此表单的提交按钮。所有这些都可以用纯HTML代码完成。Yii 提供了几个助手(helper)类简化视图编写。例如, 要创建一个文本输入域,我们可以调用 CHtml::textField(); 要创建一个下拉列表,则调用 CHtml::dropDownList(...

Yii框架官方指南系列52——专题:性能调整

网络应用程序的性能受很多因素的影响。数据库存取,文件系统操作,网络带宽等都是潜在的影响因素。 Yii 已在各个方面减少框架带来的性能影响。但是在用户的应用中仍有很多地方可以被改善来提高性能。1. 开启 APC 扩展启用 PHP APC 扩展 可能是改善一个应用整体性能的最简单方式。此扩展缓存和优化 PHP 中间代码并避免时间花费再为每个新来的请求解析PHP脚本。2. 禁用调试模式禁用调试模式是另一个改善性能的容易方式。若常量 YII_D...

Yii框架官方指南系列20——使用表单:批量收集表格输入

有时我们想通过批量模式收集用户输入。也就是说, 用户可以为多个模型实例输入信息并将它们一次性提交。 我们将此称为 表格输入(tabular input) ,因为这些输入项通常以 HTML 表格的形式呈现。要使用表格输入,我们首先需要创建或填充一个模型实例数组,取决于我们是想插入还是更新数据。 然后我们从 $_POST 变量中提取用户输入的数据并将其赋值到每个模型。和单模型输入稍有不同的一点就是: 我们要使用 $_POST[ModelClass][$i]...

Yii框架官方教程增补篇1——开始:Yii是什么【图】

Yii 是一个基于组件的高性能 PHP 框架,用于快速开发大型 Web 应用。它使Web开发中的可复用度最大化,可以显著提高你的Web应用开发速度。Yii 这个名字(读作易(Yee) 或 [ji:])是"Yes It Is!"的缩写。这往往是对于一些经常被问到的问题的最准确的答案:Yii快不快?安全吗?专业吗?是否适用于我的下一个项目?Yes, it is!Yii框架作者薛强同时也是Prado Framework的作者,在编写Yii框架的过程中,作者最大化借鉴了Prado,Ruby On ...

Yii框架官方教程增补篇2——开始:安装Yii框架【图】

Yii 的安装由如下两步组成:从 yiiframework.com 下载 Yii 框架。将 Yii 压缩包解压至一个 Web 可访问的目录(比如你的Web根目录/www/wwwroot/)。提示: 安装在 Web 目录不是必须的,每个 Yii 应用都有一个入口脚本,只有它才必须暴露给 Web 用户。其它 PHP 脚本(包括 Yii)应该保护起来不被 Web 访问,因为它们可能会被黑客利用。需求:安装完 Yii 以后你也许想验证一下你的服务器是否满足使用 Yii 的要求,只需浏览器中输入如下...

Yii框架官方教程增补篇3——开始:创建第一个Yii应用【图】

为了对 Yii 有个初步认识,我们在本节讲述如何建立第一个 Yii 应用。我们将使用yiic(命令行工具)创建一个新的 Yii 应用。Gii(强大的基于web的代码生成器)为特定的任务完成自动代码生成。假定YiiRoot为 Yii 的安装目录,WebRoot 是服务器的文档根目录。 在命令行运行yiic,如下所示:% YiiRoot/framework/yiic webapp WebRoot/testdrive注意: 在 MacOS、Linux 或 Unix 系统中运行yiic时,你可能需要修改yiic文件的权限使它能够运...

Yii框架官方指南系列21——使用表单:使用表单生成器(CForm)

当创建 HTML 表单时,经常我们发现我们在写很多重复而且在不同项目中很难重用的视图代码。 例如,对于每个输入框, 我们需要以一个文本标签和显示可能的验证错误来关联它。 为了改善这些代码的重用性,我们可以使用自版本 1.1.0 可用的表单生成器特征。1. 基本概念Yii 表单生成器使用 CForm 对象来代表描述一个HTML表单所需的内容,包括哪些数据模型关联到此表单, 表单中有哪些输入框,以及如何渲染整个表单。开发者主要需要创建和...

Yii框架官方指南系列22——使用数据库:概览

Yii提供了强大的数据库编程支持。Yii数据访问对象(DAO)建立在PHP的数据对象(PDO)extension上,使得在一个单一的统一的接口可以访问不同的数据库管理系统(DBMS)。使用Yii的DAO开发的应用程序可以很容易地切换使用不同的数据库管理系统,而不需要修改数据访问代码。Yii 的Active Record( AR ),实现了被广泛采用的对象关系映射(ORM)办法,进一步简化数据库编程。按照约定,一个类代表一个表,一个实例代表一行数据。Yii AR消除了大...

Yii框架官方指南系列23——使用数据库:数据访问对象(DAO)

数据访问对象(DAO) 对访问存储在不同数据库管理系统(DBMS)中的数据提供了一个通用的API。 因此,在将底层 DBMS 更换为另一个时,无需修改使用了 DAO 访问数据的代码。 Yii DAO 基于 PHP Data Objects (PDO) 构建。它是一个为众多流行的DBMS提供统一数据访问的扩展,这些 DBMS 包括 MySQL, PostgreSQL 等等。因此,要使用 Yii DAO,PDO 扩展和特定的 PDO 数据库驱动(例如 PDO_MYSQL) 必须安装。 Yii DAO 主要包含如下四个类:C...

Yii框架官方指南系列24——使用数据库:QueryBuilder

Yii框架的Query Builder提供了以面向对象的方式编写SQL语句,允许开发者使用类方法和属性来指定SQL语句中的独立部分,并且将这些不同部分组装成一个可以通过调用如上一章节所述的DAO方法来执行的SQL语句。下面展示了使用Query Builder来构建SELECT SQL语句的典型方法:$user = Yii::app()->db->createCommand()->select(id, username, profile)->from(tbl_user u)->join(tbl_profile p, u.id=p.user_id)->where(id=:id, array(:id=>...

Yii框架官方教程增补篇4——基础知识:模型-视图-控制器(MVC)【图】

Yii 使用了 Web 开发中广泛采用的模型-视图-控制器(MVC)设计模式。 MVC的目标是将业务逻辑从用户界面的考虑中分离,这样开发者就可以更容易地改变每一部分而不会影响其他。 在 MVC中,模型代表信息(数据)和业务规则;视图包含了用户界面元素,例如文本,表单等; 控制器则管理模型和视图中的通信。除了 MVC, Yii 还引入了一个前端控制器,叫做 应用,它表示请求处理的执行上下文。 应用处理用户的请求并将其分派到一个合适的控...

Yii框架官方指南系列25——使用数据库:ActiveRecord

虽然 Yii DAO 可以处理几乎任何数据库相关的任务, 但很可能我们会花费 90% 的时间以编写一些执行普通 CRUD(create, read, update 和 delete)操作的 SQL 语句。 而且我们的代码中混杂了SQL语句时也会变得难以维护。要解决这些问题,我们可以使用 Active Record。Active Record (AR) 是一个流行的 对象-关系映射 (ORM) 技术。 每个 AR 类代表一个数据表(或视图),数据表(或视图)的列在 AR 类中体现为类的属性,一个 AR 实例则...

Yii框架官方指南系列26——使用数据库:关系型ActiveRecord【图】

我们已经了解了怎样使用 Active Record (AR) 从单个数据表中获取数据。 在本节中,我们讲解怎样使用 AR 连接多个相关数据表并取回关联(join)后的数据集。为了使用关系型 AR,我们建议在需要关联的表中定义主键-外键约束。这些约束可以帮助保证相关数据的一致性和完整性。为简单起见,我们使用如下所示的实体-关系(ER)图中的数据结构演示此节中的例子。信息: 对外键约束的支持在不同的 DBMS 中是不一样的。 SQLite < 3.6.19 不支...

Yii框架官方教程增补篇5——基础知识:入口脚本

入口脚本是处理用户的初始引导PHP脚本。它是唯一一个最终用户可直接请求执行的PHP脚本。多数情况下,一个 Yii 应用的入口脚本包含像下面这样简单的脚本:// 在生产环境中请删除此行 defined(YII_DEBUG) or define(YII_DEBUG,true); // 包含Yii引导文件 require_once(path/to/yii/framework/yii.php); // 创建一个应用实例并执行 $configFile=path/to/config/file.php; Yii::createWebApplication($configFile)->run();脚本首先包含...

Yii框架官方指南系列增补版27——使用数据库:数据库迁移

注意: yii从版本1.1.6以后才开始支持数据库迁移特性。和源码一样,数据库的结构也随着我们开发和维护数据库驱动应用而不断壮大.例如,在开发期间,我们可能想要添加一个新的表; 或者在应用投入生产期以后,我们可能会意识到需要在某个列上添加索引. 跟踪这些数据库结构的改变(被称作迁移)和操作源代码一样很重要.如果源码和数据库不同步了,可能这个系统都会中断。正是因为这个原因,Yii框架提供了数据库迁移工具,以便跟踪数据库...

框架 - 相关标签