[我的PHP之旅] YII框架学习 01.安装与配置

关于YII

这是一款快速,安全,专业的 PHP 框架,自带了丰富的功能 ,包括 MVC,DAO/ActiveRecord,I18N/L10N,缓存,身份验证和基于角色的访问控制,脚手架,测试等,可显著缩短开发时间。 而且我个人觉得这个框架的源码架构比较友好,很适合去学习。

安装与配置

在YII FrameWork 中文社区中的“下载”选项卡可以下载源码。初学者推荐选择“Yii2的基本应用程序模板”,下载好之后进行解压。用浏览器打开文件夹中requirements.php,会检测你的PHP环境是否合适,这包括你的PHP版本是否足够,你的插件和扩展库是否齐全等等。之后打开文件夹中web\index.php,理论上讲直接浏览会报错。应该先修改文件夹中config\web.php,如下

 'components' => [
        'request' => [
            // !!! insert a secret key in the following (if it is empty) - this is required by cookie validation
            'cookieValidationKey' => '',
        ],
        'cache' => [
            'class' => 'yii\caching\FileCache',
        ],

这里的cookieValidationKey,随便设置一个值就可以了。设置完之后web/index.php就不会报错了,而是出现了“Congratulations!”的字样,这样我们就差不多可以开始玩了。

YII结构

basic/                  应用根目录
composer.json       Composer 配置文件, 描述包信息
config/             包含应用配置及其它配置
    console.php     控制台应用配置信息
    web.php         Web 应用配置信息
commands/           包含控制台命令类
controllers/        包含控制器类
models/             包含模型类
runtime/            包含 Yii 在运行时生成的文件,例如日志和缓存文件
vendor/             包含已经安装的 Composer 包,包括 Yii 框架自身
views/              包含视图文件
web/                Web 应用根目录,包含 Web 入口文件
    assets/         包含 Yii 发布的资源文件(javascript 和 css)
    index.php       应用入口文件
yii                 Yii 控制台命令执行脚本

按照这个把自己添加的组件放入对应的目录下可以提高项目的整洁性与可维护性。 与大多数WEB框架一样,YII采用了MVC架构,如下图

社区里还有更详细的图解,关于用户的一次HTTP请求,YII都做出了哪些动作也就是请求的生命周期,如下图

用户向入口脚本 web/index.php 发起请求。
入口脚本加载应用配置并创建一个应用实例去处理请求。
应用通过请求组件解析请求的路由。
应用创建一个控制器实例去处理请求。
控制器创建一个操作实例并针对操作执行过滤器。
如果任何一个过滤器返回失败,则操作退出。
如果所有过滤器都通过,操作将被执行。
操作会加载一个数据模型,或许是来自数据库。
操作会渲染一个视图,把数据模型提供给它。
渲染结果返回给响应组件。
响应组件发送渲染结果给用户浏览器。

总结

框架,就是让使用者写写配置文档,简简单单的少量编程,使用自己提供的接口就可以搭建一个较为完整的WEB应用。但是我们作为学习者还是应该多了解他的实现方式才行,所以我们应该不断的挖掘才对

你可能感兴趣的:(PHP)