宝哥软件园

Yii2框架控制器、路由、Url生成操作示例

编辑:宝哥软件园 来源:互联网 时间:2021-08-23

本文通过实例描述了Yii2框架的控制器、路由和Url生成操作。分享给大家参考,如下:

控制器和路由

控制器以控制器为后缀,继承自yii web Controller动作以动作为前缀,公共访问修改;控制器标识类名被删除后缀,所有后缀都被转换成小写。如果是驼峰命名,多词转换为中杠切分;动作标识带有前缀,并全部转换为小写。如果驼峰命名多个单词,则转换为中间小节分段;路由如何指向动作:控制器ID/动作ID URL访问规则:index.php?R=路线参数=值。默认路由站点在YII web application :3360 $ default route或YII base module :3360 $ default route中定义。默认操作标识索引在YII 基本控制器33603360 $默认操作中定义

1.创建新FooBarController.php

这里写图片描述

?phpnamespace应用程序控制器;使用yii web 控制器;类foobar控制器扩展控制器{公共函数action userinfo () {return '控制器ID为:foo-bar,操作ID为: user-ino ';}}浏览器访问:

这里写图片描述

网址生成

演示Url帮助类如何工作

使用yii helpers Url//要在同一控制器中路由的操作回显URL :([' update ',' id '=' 1 ']);//如果没有参数,可以传递字符串而不是数组。//不同控制器(同一模块)的动作回显URL :3360进行路由(‘post/index’);//绝对路由(可以跳出当前模块,如果模块已启用,需要在它之前添加模块的id):echo URL :3360 to route(' site/index ')//当前控制器,一个由几个字组成的动作,如action user infoecho URL 33603360 to route(' user-info ');//控制器中间有大写,例如,actionUpdate方法echourl:3360要在DateTimeController中路由(['date-time/update ',' id '=105]);//要路由的域名为echo URL :的URL('网站/索引',true);//要路由的路由别名回显URL :(“@ register”);//需要先注册别名,比如yii:set别名(' @ register ',' site/register ')//拼接回显Url:base()比如image和css//yiipro/web echo URL : BaSe(true);//http://localhost/yiipro web echo URL : to();//为空表示当前url包含参数echo URL :3360 to(array);//将URL 33603360等效为URL 33603360(数组)回显URL 33603360到(“@ Baidu”);//别名,如yii:set别名(' @百度',' http://www.baidu.com/')在控制器中跳转

返回$ this-redirect([' site/index ']);//Url:to()在内部被调用来生成Url,所以在大多数情况下,需要传入一个数组来移除Url中的index.php。r=

components '=[' URL manager '=[' enablebutyurl '=true。//要不要美化网址(去掉?R=) 'showScriptName'=false,//delete index.php(apache需要打开重写并添加。htaccess文件)' rules'=[],],],[ Apache]

mod_rewrite.so模块被加载到httpd.conf配置文件中

允许编辑无将无更改为全部

将以下内容保存为。并将其放在与应用程序入口文件相同的目录中

if module mod _ rewrite . c Rewrite engine on Rewrite cond % { REQUEST _ FILENAME }!-d Rewrite cond % { REQUEST _ FILENAME }!^(.重写器*)$ index.php/$1[QSA,PT,L]/IfModule[ Nginx ]

较低版本的Nginx不支持PATHINFO,但可以通过在Nginx.conf中配置转发规则来实现:

位置/{//.省略部分代码如果(!-e $request_filename) {重写^(.*)$ /index.php?s=最后$ 1;打破;}}更多对Yii相关内容感兴趣的读者可以查看本网站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》、《php常见数据库操作技巧汇总》

希望本文对基于Yii框架的PHP编程有所帮助。

更多资讯
游戏推荐
更多+