本文实例讲述了Yii 框架控制器创建使用及控制器响应操作。...分享给大家供大家参考,具体如下: Yii 框架控制器创建使用 在根目录下的controllers目录下创建控制器HelloController.php: <?...r=hello/index 参数r后边跟控制器名字/方法名字。 如果需要传递参数: <?...框架控制器响应 public function actionIndex(){ //控制器响应处理 $res = \Yii::$app- response; //设置状态码.../robots.txt'); } 希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。
本文实例讲述了Yii框架分页技术。...分享给大家供大家参考,具体如下: 直接上代码: 1.首先写控制器层 先引用pagination类 use yii\data\Pagination; 写自己的方法: function actionFenye...(){ $data = Field::find(); //Field为model层,在控制器刚开始use了field这个model,这儿可以直接写Field,开头大小写都可以,为了规范,我写的是大写...$pages = new Pagination(['totalCount' = $data- count(), 'pageSize' = '2']); //实例化分页类,带上参数(总条数,.../yii/frontend/web/index.php?r=gii 生成的model(详细链接) 3.最后是显示页面 <?php use yii\widgets\LinkPager; ? <?
本文实例讲述了Yii框架where查询用法。...分享给大家供大家参考,具体如下: 1.简述 Yii的查询操作找使用where用的很多 总结下常用的哈希格式与操作符格式 2.操作符格式 适用于操作符的 [操作符, 操作数1, 操作数2, …] [ 'LIKE...exists:需要一个操作数,该操作数必须是代表子查询 yii\db\Query 的一个实例, 它将会构建一个 EXISTS (sub-query) 表达式。...更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string...)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》 希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。
本文实例讲述了Yii框架页面渲染操作。...分享给大家供大家参考,具体如下: 1、一般页面渲染 yii的页面渲染通过在controller的action中调用this- render(viewname...)进行,流程如下图: ?...可以看到beginContent调用beginWidget并传入了一个类名,这个类的实例就是后面的widget,表示了一个装饰器,注意在createWidget时传入了当前controller的实例,并且会对...widget的view属性赋值为layout名称(这里的过程还要稍微复杂些,但是大致的意图是这样的,具体可参考源码),这两个变量后面有用;然后调用widget的Init方法使其初始化,并将其缓存到controller...就是widget的owner属性,表示谁拥有这个widget,还记得在beginContent中向widget实例传入了controller对象吧?
使用yii2框架进行跨控制器跳转,调用方法等 方法一、 1.1、带参数的 $control=Yii::app()->runController('site/show/id/2'); 1.2、不带参数的...$control=Yii::app()->runController('site/show'); 方法二、 redirect使用方法 一般都是控制器层里执行某段代码结束之后跳转到其他控制器的方法里,
本文实例讲述了Yii框架核心组件类。分享给大家供大家参考,具体如下: CComponent类为YII框架的基于组件和事件驱动编程提供了基础,YII框架中的大部分类都将CComponent类作为基类。...一个主要得原因是需要对成员变 量进行“延时加载”,一般情况下类的成员变量是在构造函数或者初始化函数进行统一赋值,但是在一次web请求的处理过程中不是每个成员变量都会被使用,比 如App类中定义了两个成员变量...:cache和db(cache是一个缓存对象,db是一个数据库链接对象),这两个对象在App类初始化的时候 创建,但是一个web网站的有些页面,它内容可以通过缓存获取,那么数据库链接对象其实就不需要创建...——即在第一次使用时进行初始化。...虽然延时加载会增加一次函数调用,但是可以减少不必要的成员变量的初始化(总体上其实是提升了网站的访 问速度),而且可以使得我们的代码更加易维护、易扩展。
本文实例讲述了Yii框架应用组件用法。分享给大家供大家参考,具体如下: 应用组件 ¶ 应用主体是服务定位器, 它部署一组提供各种不同功能的 应用组件 来处理请求。...例如,urlManager组件负责处理网页请求路由到对应的控制器。 db组件提供数据库相关服务等等。...引导启动组件 上面提到一个应用组件只会在第一次访问时实例化, 如果处理请求过程没有访问的话就不实例化。...有时你想在每个请求处理过程都实例化某个组件即便它不会被访问, 可以将该组件ID加入到应用主体的 bootstrap 属性中。 你还可以使用闭包来引导启动自定义的组件。不需要直接返回一个实例化的组件。...在应用主体 yii\base\Application 实例化后,闭包也会被调用。 例如, 如下的应用主体配置保证了 log 组件一直被加载。
本文实例讲述了Yii框架的布局文件。分享给大家供大家参考,具体如下: 首先,何为布局文件呢?我的理解就是布局存放了视图文件中的相同代码,使用布局文件可以减少视图文件代码的冗余。...下面介绍如何使用Yii的布局文件。 首先在views\layouts下面创建自己的布局文件 common.php <!...</body </html 然后在控制器中设置变量$layout,并调用render方法 class IndexController extends Controller { public $layout...更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string...)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》 希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。
本文实例讲述了Yii框架响应组件用法。...$response = \Yii::$app- response; 有了这个响应组件之后,我们可以对响应消息进行一些设置了,比如设置响应的状态码。...更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string...)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》 希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。
本文实例讲述了Yii框架常见缓存应用。分享给大家供大家参考,具体如下: 1 首先,你需要安装apc or memcache or redis 。 安装完后。 以redis 为例。...Yii::app()- cache- set('id', date("Y-m-d H:i:s"), 5); //设置有效时间为5. echo Yii::app()- cache- get("id")."...<br/ "; sleep(2); echo Yii::app()- cache- get("id"); //缓存有效期内 会输出数据 sleep(4); echo Yii::app()- cache-...COutputCache+index+admin', 'duration' = 120, 'varyByParam'= array('id'), ), ); } 使用控制器...更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string
本文实例讲述了Yii 框架应用(Applications)操作。分享给大家供大家参考,具体如下: 应用主体 ¶ 应用主体是管理 Yii 应用系统整体结构和生命周期的对象。.../config/web.php'; // 实例化应用主体、配置应用主体 (new yii\web\Application($config))- run(); 类似其他 配置 文件, 应用主体配置文件标明如何设置应用对象初始属性...[ function () { return Yii::$app- getModule('user'); }, ] 在启动阶段,每个组件都会实例化。...另外,在应用主体实例化后,你可以在 引导启动 阶段附加事件处理代码, 例如: \Yii::$app- on(\yii\base\Application::EVENT_BEFORE_REQUEST, function...在事件触发前,应用主体已经实例化并配置好了, 所以通过事件机制将你的代码嵌入到请求处理过程中非常不错。
本文实例讲述了Yii框架小部件(Widgets)用法。分享给大家供大家参考,具体如下: 小部件 ¶ 小部件是在 视图 中使用的可重用单元, 使用面向对象方式创建复杂和可配置用户界面单元。...使用小部件 小部件基本上在views中使用, 在视图中可调用 yii\base\Widget::widget() 方法使用小部件。 该方法使用 配置 数组初始化小部件并返回小部件渲染后的结果。...注意和调用 yii\base\Widget::widget() 返回渲染结果不同, 调用 yii\base\Widget::begin() 方法返回一个可组建小部件内容的小部件实例。...创建小部件 继承 yii\base\Widget 类并覆盖 yii\base\Widget::init() 和/或 yii\base\Widget::run() 方法可创建小部件。...信息: 当你调用 yii\base\Widget::begin() 时会创建一个新的小部件 实例并在构造结束时调用init()方法, 在end()时会调用run()方法并输出返回结果。
继上篇yii实战之初见端倪,本篇将讲解控制器和视图的基础用法。...默认控制器 默认控制器是由defaultRoute这个属性控制的,源码在:\yii\web\Application::$defaultRoute,可以在配置文件中指定自定义的默认控制器 在common/...404报错 因为我们指定默认控制器为index,却没有创建相应的文件,接下来我们用yii的gii组件生成控制器文件。...,再刷新网页,就能正常访问了 查看gii更多用法可以执行:php yii help gii ?...人物列表 小结 本节简单的演示了控制器跟视图的交互,下节将讲解yii自带的user组件,实现用户的注册、登录、退出功能,敬请关注...
本文实例讲述了Yii2框架控制器、路由、Url生成操作。...分享给大家供大家参考,具体如下: 控制器与路由 控制器以Controller作为后缀,继承自yii\web\Controller; 动作以action作为前缀,public访问修饰; 控制器ID 类名去后缀...r=路由 传参使用&参数=值 的方式 默认路由site定义在yii\web\Application:: 1.新建一个FooBarController.php ? <?...php namespace app\controllers; use yii\web\Controller; class FooBarController extends Controller {...URL生成 Url帮助类工作方式演示 use yii\helpers\Url; // 同一个控制器中的action echo Url::toRoute(['update','id'= '1']); /
Yii2框架为我们自定义好的 controllers,Models,views,标准的MVC结构框架,但是有些时候我们写接口希望结构更加清晰而不希望与其他控制器放在一起,想自定义文件夹作为API的控制器类...,下面就介绍利用yii的controllerMap来自定义我们的API控制器。...* User: Administrator * Date: 2016/3/16 * Time: 23:03 */ namespace frontend\api; use yii...=>[ 'api'=>[ 'class'=>'frontend\api\ApiController' ]], 访问我们的API控制器...已经完成了自定义的控制器配置 我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?
yii2在使用的时候,访问控制器的时候,如果控制器的名称是驼峰命名法,那访问的url中要改成横线的形式。...刚开始以为YII2中肯定有这样的设置,然后就去google了下,发现都说不行,自己去看了下,果然,框架里面直接是写死的:(源码)\vendor\yiisoft\yii2\base\Controller.php...由于我们的项目用的事yii2的advanced版本,并且里面有多个项目,还要保证其他项目使用正常(也就是个别的控制器才需要使用驼峰命名的方式访问),这也容易: 我们可以写个components处理:\common...; use yii\base\InlineAction; class zController extends Controller //这里需要继承自\yii\base\Controller {...ok ,这就可以支持使用驼峰形式访问了,当然这个的形式很多,也可以写成一个控制器,然后其它控制器继承这个控制器就行了,但是原理是一样的 如何使用?
php namespace common\helpers; use yii; use yii\base\Model; use yii\base\Object; use yii\web\UploadedFile...::t('app', 'File'), 'image' => Yii::t('app', 'Image'), ]; } } 文件上传实例接口方法 类函数说明...文件上传 actionFileUpload 图片上传实例方法 actionImageUpload 初始化文件上传类 $model = New UploadHelper([...最终上传成功后 会销毁临时文件 文件上传实例方法 /** * 文件上传 * @return yii\web\Response */ public function...status' => 'error', 'message' => $e->getMessage() ]); } } 图片上传实例方法
基础总结 1.修改默认控制器/方法 yii默认是site控制器,可以在web.php中设置$config中的'defaultRoute'='xxxx';使用自定义默认的控制器。...yii的默认方法是index,可以在vender/yiisoft/yii2/base/Controller.php 中进行初始设置,也可以在控制器中改写defaltAction='action'。...registerJsFile('js.js')来引入js文件; 8.分页类的使用 //在模型中计算出总数量 $count=$this->find()->where()->count(); //用总条数和设定的每页个数实例化一个...2.初始化变量 想在控制器中每一个操作前,初始化一个变量的话不要重写__construct构造函数,因为它需要传入各种变量。...在ActiveForm中如果数据表中有了此字段,就不要再用public声明一个属性了,会导致attribute无法赋值。。。。(血泪)。
本文实例讲述了Yii2.0框架behaviors方法使用。...分享给大家供大家参考,具体如下: 初学Yii2.0 学习路径:http://www.yii-china.com/ 经过各种学习,积累知识点; (1)控制器 behaviors 过滤数据需要引入如下文件...表示) authenticated (登录了的,用 @ 表示) 在这里我们需要实现的是对这两种不同的角色指定不同的访问权限,就是为他们分配不同的可以访问的控制器或者方法。...StatusController.php里面的behaviors()方法而已, 在这里面加入一段access设置: 控制器中的代码(1) public function behaviors(){ return...用户一旦登录进来之后,我们就可以通过下面这行代码来获取用户的id了: $userid=Yii::$app- user- getId(); //获取用户id 控制器中的案例(2) public function
领取专属 10元无门槛券
手把手带您无忧上云