Yii中文手册,安装教程,结构解析
第 1 页 共 112 页 Yii framework 中文手册
Yii 是什么
Yii 是一个基于组件、用于开发大型 Web 应用的高性能 PHP 框架。它将 Web 编程中的可重用性发挥到极致,能够显著加速开发进程。Yii (读作“易”)代表简单(easy)、高效(efficient)、可扩展(extensible)。
需求
要运行一个基于 Yii 开发的 Web 应用,你需要一个支持 PHP 5.1.0 (或更高版本)的 Web 服务器。
对于想使用 Yii 的开发者而言,熟悉面向对象编程(OOP)会使开发更加轻松,因为 Yii 就是一个纯 OOP 框架。 Yii 适合做什么?
Yii 是一个通用 Web 编程框架,能够开发任何类型的 Web 应用。它是轻量级的,又装配了很好很强大的缓存组件,因此尤其适合开发大流量的应用,比如门户、论坛、内容管理系统(CMS)、电子商务系统,等等。
Yii 和其它框架比起来怎样?
和大多数 PHP 框架一样,Yii 是一个 MVC 框架。
Yii 以性能优异、功能丰富、文档清晰而胜出其它框架。它从一开始就为严谨的 Web 应用开发而精心设计,不是某个项目的副产品或第三方代码的组合,而是融合了作者丰富的 Web 应用开发经验和其它热门 Web 编程框架(或应用)优秀思想的结晶。
安装步骤
Yii 的安装由如下两步组成:
1. 从 59e3d5d676a20029bd642d63 下载 Yii 框架。
2. 将 Yii 压缩包解压至一个 Web 可访问的目录。 提示: 安装在 Web 目录不是必须的,每个 Yii 应用都有一个入口脚本,只有它才必须暴露给 Web 用户。其它 PHP 脚本(包括 Yii )应该保护起来不被 Web 访问,因为它们可能会被黑客利用。
需求
安装完 Yii 以后你也许想验证一下你的服务器是否满足使用 Yii 的要求,只需浏览器中输入如下网址来访问需求检测脚本:
http://hostname/path/to/yii/requirements/index.php
第 2 页 共 112 页 Yii 的最低需求是你的 Web 服务器支持 PHP 5.1.0 或更高版本。Yii 在 Windows 和 Linux 系统上的 Apache HTTP 服务器 中测试通过,应该在其它支持 PHP 5 的 Web 服务器和平台上也工作正常。
建立第一个 Yii 应用
为了对 Yii 有个初步认识,我们在本节讲述如何建立第一个 Yii 应用。我们将使用强大的 yiic 工具,它用来自动生成各种代码。假定 YiiRoot 为 Yii 的安装目录。
在命令行运行 yiic ,如下所示: % YiiRoot/framework/yiic webapp WebRoot/testdrive 注意: 在 MacOS 、Linux 或 Unix 系统中运行 yiic 时,你可能需要修改 yiic 文件的权限使它能够运行。你也可以用 php YiiRoot/framework/yiic.php 来代替 yiic 。
这将在 WebRoot/testdrive 目录下建立一个最基本的 Yii
应用,WebRoot 代表你的 Web 服务器根目录。这个应用具有所有必须的目录和文件,因此可以方便地在此基础上添加更多功能。
不用写一行代码,我们可以在浏览器中访问如下 URL 来看看我们第一个 Yii 应用:
http://hostname/testdrive/index.php
正如我们看到的,这个应用包含三个页面:首页、联系页、登录页。首页展示一些关于应用和用户登录状态的信息,联系页显示一个联系表单以便用户填写并提交他们的咨询,登录页允许用户先通过认证然后访问已授权的内容。查看下列截图了解更多:
首页
联系页
第 3 页共112 页
输入错误的联系页第 4 页共112 页
提交成功的联系页第 5 页共112 页
第 6 页 共 112 页
登录页
下面的树图描述了我们这个应用的目录结构。请查看约定以获取该结构的详细解释。 testdrive/
index.php Web
应用入口脚本文件
assets/ 包含公开的资源文件
css/ 包含 CSS 文件
images/ 包含图片文件
themes/ 包含应用主题
protected/ 包含受保护的应用文件
yiic yiic 命令行脚本
yiic.bat Windows 下的 yiic 命令行脚本
commands/ 包含自定义的 'yiic' 命令
shell/ 包含自定义的 'yiic shell' 命令
components/ 包含可重用的用户组件
MainMenu.php 'MainMenu' 挂件类
Identity.php 用来认证的 'Identity' 类
views/ 包含挂件的视图文件
mainMenu.php 'MainMenu' 挂件的视图文件
config/ 包含配置文件
console.php 控制台应用配置
main.php Web 应用配置
controllers/ 包含控制器的类文件
SiteController.php 默认控制器的类文件
extensions/ 包含第三方扩展
messages/ 包含翻译过的消息
models/ 包含模型的类文件
LoginForm.php 'login' 动作的表单模型
ContactForm.php 'contact' 动作的表单模型
runtime/ 包含临时生成的文件
views/ 包含控制器的视图和布局文件
layouts/ 包含布局视图文件
main.php 所有视图的默认布局
site/ 包含 'site' 控制器的视图文件
contact.php 'contact' 动作的视图
index.php 'index' 动作的视图
login.php 'login' 动作的视图
system/ 包含系统视图文件
连接到数据库
大多数Web 应用由数据库驱动,我们的测试应用也不例外。要使用数据库,我们首先需要告诉应用如何连接它。修改应用的配置文件WebRoot/testdrive/protected/config/main.php即可,如下所示:
return array(
......
'components'=>array(
......
'db'=>array(
第7 页共112 页
'connectionString'=>'sqlite:protected/data/source.db',
),
),
......
);
在上面的代码中,我们添加了db条目至components中,指示应用在需要的时候连接到SQLite 数据库WebRoot/testdrive/protected/data/source.db。
注意:要使用Yii 的数据库功能,我们需要启用PHP 的PDO 扩展和相应的驱动扩展。对于测试应用来说,我们需要启用php_pdo和php_pdo_sqlite扩展。
接下来,我们需要准备一个SQLite 数据库以使上面的配置生效。使用一些SQLite 管理工具,我们可以建立一个包含如下模式的数据库:
CREATE TABLE User(
id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
username VARCHAR(128)NOT NULL,
password VARCHAR(128)NOT NULL,
email VARCHAR(128)NOT NULL
);
简单起见,我们只在库中建立了一个User表。SQLite 数据库文件保存在
WebRoot/testdrive/protected/data/source.db。注意,数据库文件和包含它的目录都要求Web 服务器进程可写。
实现CRUD 操作
激动人心的时刻来了。我们想要为刚才建立的User表实现CRUD (create, read, update 和delete) 操 …… 此处隐藏:15886字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [学前教育]MC9S12XS256RMV1 xs128芯片手册4
- [学前教育]安东尼语录经典语录
- [学前教育]e级gps控制测量技术设计书
- [学前教育]苏教版2022-2022学年八年级下学期期末
- [学前教育]装修公司推广 营销
- [学前教育]家政服务合同(完整版)
- [学前教育]湖北省2016届高三联考语文试题
- [学前教育]爱立信无涯学习系统LTE题库1-LTE基础知
- [学前教育]揭秘大众柴油车作弊软件原理
- [学前教育]人才流失原因及对策分析
- [学前教育]房屋建筑施工工程劳务分包合同
- [学前教育]国际贸易实务试卷A卷09.6
- [学前教育]校园废品回收活动计划方案书范文格
- [学前教育]电大成本会计试题及答案
- [学前教育]大学物理实验 华南理工出版社 绪论答案
- [学前教育]爱丁堡产后抑郁量表
- [学前教育]液压冲击的危害、产生原因与防止方法(
- [学前教育]学生工作总结高一学生期中考试总结_020
- [学前教育]人民医院医疗废物管理规章制度大全
- [学前教育]阳光维生素的巨大抗癌潜能阅读题答案.d
- 马云在云锋基金江苏论坛闭幕式的发言
- 试论小学体育教育中的心理健康教育-教
- 语文A版一年级下册《语文乐园一》教学
- 2021四川大学物理化学考研真题经验参考
- [人教A版]2015-2016学年高中数学 第二
- 终端网点销售返利协议书
- 江苏省2015年眼科学主治医师青光眼考试
- 2017年部编人教版八年级语文上册教案
- 十一中学七年级英语上册Unit7Howmuchar
- 以赛促教的创新性实验教学机制建设实践
- 平凉市崆峒区2015七年级下生物期末试题
- 琶洲(地块五)A、B塔楼1、2#塔吊基础
- 一级医院工作制度与人员岗位职责
- 2018北京西城区高三二模理科数学试题及
- 炒股密码线技术 - 图文
- 职高学生生涯发展辅导教案
- 语文人教版四年级上册8 世界地图引出的
- 最新最新人教版二年级上册全册数学教案
- 2017高考英语全国2卷精彩试题(有问题
- 普通心理学笔记




