PHP开发框架kohana3 自定义路由设置示例


Posted in PHP onJuly 14, 2014

由于kohana框架在国内的用户较少,而且新版与kohana2.X差别太大,加之kohana3资料多为英文.让很多对kohana感兴趣,想学的同学们只能望K兴叹.由于公司 最近转向kohana3开发(kohana3.1.0稳定版),所以我趁次机会,认真看了下官方的资料.获益良多,借个人小站,分享给大家.今天呢,就说下kohana的路由设置.
再次说下,我用的是ko3.1.0与ko3有差别的.
其实呢,kohana3的路由设置,很简单.打开application文件下的bootstrap.php,找到Route::set,会看如下的默认路由:

Route::set('default', '((/(/)))')

->defaults(array(

'controller' => 'welcome',

'action'     => 'index',

));

这个呢,就是默认的路由了,可以看出它的组成是这样子的.名称,控制器,动作,参数.特别要指出的是,每个路由必须指定默认的控制和动作,一般是index.

如何创建自定义的路由呢,其实和默认的写法是一样只不过,加入自己要加的东西.例如有一个产品列表页,需要获取产品类型的ID和当前页码.
路由可以这样设置

Route::set('product', 'product/((/)(/))')

->defaults(array(

'controller' => 'product',

'action'     => 'index',

'id'             =>0,

'page'       =>0//有的例子这里是NULL,但是我用了报错.

));

这里呢,第一个product是名称,后面的是重点讲的地方,product是控制器,/action是动作,一定要这么写.后面(/<>)里面是参数.在页面中获取这里参数是这样,$id = $this->request->param('id'),这个里面的id,与路由里面的id名称必须相同.
需要的同学可参照这个例子去改,应该可以了.未了,强烈推荐大家看2个站的东西

1.http://kohanaframework.org/3.1/guide(官方的在线文档)
2.http://kerkness.ca/wiki/doku.php(非官方的维基,例子比官方的好,但是版本3.0的)

可以对比着看,相信大家一定可以玩转kohana,加油!!

PHP 相关文章推荐
php一句话cmdshell新型 (非一句话木马)
Apr 18 PHP
php 字符过滤类,用于过滤各类用户输入的数据
May 27 PHP
PHP 根据IP地址控制访问的代码
Apr 22 PHP
PHP随机数生成代码与使用实例分析
Apr 08 PHP
简单谈谈php中ob_flush和flush的区别
Nov 27 PHP
php实现可运算的验证码
Nov 10 PHP
ThinkPHP项目分组配置方法分析
Mar 23 PHP
PHP实现原生态图片上传封装类方法
Nov 08 PHP
PHP面向对象之工作单元(实例讲解)
Jun 26 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
May 28 PHP
tp5递归 无限级分类详解
Oct 18 PHP
php 中的信号处理操作实例详解
Mar 04 PHP
PHP缓存机制Output Control详解
Jul 14 #PHP
PHP生成指定长度随机数最简洁的方法
Jul 14 #PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
Jul 12 #PHP
PHP实现获取图片颜色值的方法
Jul 11 #PHP
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
Jul 11 #PHP
php事务处理实例详解
Jul 11 #PHP
PHP实现显示照片exif信息的方法
Jul 11 #PHP
You might like
php 中英文语言转换类
2011/09/07 PHP
PHP 年龄计算函数(精确到天)
2012/06/07 PHP
php计算十二星座的函数代码
2012/08/21 PHP
PHP中mb_convert_encoding与iconv函数的深入解析
2013/06/21 PHP
php文件上传的简单实例
2013/10/19 PHP
php截取中文字符串不乱码的方法
2013/12/25 PHP
PHP IE中下载附件问题解决方法
2014/01/07 PHP
yii2中关于加密解密的那些事儿
2018/06/12 PHP
简单实用的PHP文本缓存类实例
2019/03/22 PHP
解决Laravel无法使用COOKIE和SESSION的问题
2019/10/16 PHP
如何在PHP中使用数组
2020/06/09 PHP
javascript 屏蔽鼠标键盘的几段代码
2008/01/02 Javascript
JQuery 1.3.2以上版本中出现pareseerror错误的解决方法
2011/01/11 Javascript
BootStrap 动态添加验证项和取消验证项的实现方法
2016/09/28 Javascript
jquery html5 视频播放控制代码
2016/11/06 Javascript
从零开始学习Node.js系列教程四:多页面实现的数学运算示例
2017/04/13 Javascript
微信小程序实现根据字母选择城市功能
2017/08/16 Javascript
Validform验证时可以为空否则按照指定格式验证
2017/10/20 Javascript
Vue DevTools调试工具的使用
2017/12/05 Javascript
nodejs搭建本地服务器并访问文件操作示例
2019/05/11 NodeJs
通过实例学习React中事件节流防抖
2019/06/17 Javascript
Vue-cli3.x + axios 跨域方案踩坑指北
2019/07/04 Javascript
python原始套接字编程示例分享
2014/02/21 Python
用Python绘制漫步图实例讲解
2020/02/26 Python
Python 如何对文件目录操作
2020/07/10 Python
python中的测试框架
2020/11/13 Python
英国最大的海报商店:GB Posters
2018/03/20 全球购物
德国香水、化妆品和护理产品网上商店:Parfumdreams
2018/09/26 全球购物
土木工程应届生自荐信
2013/09/24 职场文书
管理部副部长岗位职责范文
2014/03/09 职场文书
外语系毕业生求职自荐信
2014/04/12 职场文书
无传销社区工作方案
2014/05/13 职场文书
县政府班子个人对照检查材料
2014/10/05 职场文书
班主任2015新年寄语
2014/12/08 职场文书
2015年国庆节标语大全
2015/07/30 职场文书
清明节主题班会
2015/08/14 职场文书