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 miniBB中文乱码问题解决方法
Nov 25 PHP
zf框架db类的分页示例分享
Mar 14 PHP
神盾加密解密教程(三)PHP 神盾解密工具
Jun 08 PHP
php基于str_pad实现卡号不足位数自动补0的方法
Nov 12 PHP
php中的动态调用实例分析
Jan 07 PHP
php获取Google机器人访问足迹的方法
Apr 15 PHP
浅析PHP中call user func()函数及如何使用call user func调用自定义函数
Nov 05 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
Feb 01 PHP
PHP中读取文件的几个方法总结(推荐)
Jun 03 PHP
PHP bin2hex()函数基础实例讲解
Feb 11 PHP
PHP7中I/O模型内核剖析详解
Apr 14 PHP
浅析PHP中的 inet_pton 网络函数
Dec 16 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数据类型之整数类型、浮点数的介绍
2013/04/28 PHP
php分页函数完整实例代码
2014/09/22 PHP
PHP加密3DES报错 Call to undefined function: mcrypt_module_open() 如何解决
2016/04/17 PHP
PDO::beginTransaction讲解
2019/01/27 PHP
如何在PHP中使用数组
2020/06/09 PHP
一个XML格式数据转换为图表的例子
2010/02/09 Javascript
js点击页面其它地方将某个显示的DIV隐藏
2012/07/12 Javascript
jquery多行滚动/向左或向上滚动/响应鼠标实现思路及代码
2013/01/23 Javascript
js中用window.open()打开多个窗口的name问题
2014/03/13 Javascript
javascript如何实现360度全景照片问题汇总
2016/04/04 Javascript
Javascript中字符串replace方法的第二个参数探究
2016/12/05 Javascript
微信小程序switch组件使用详解
2018/01/31 Javascript
基于JavaScript实现幸运抽奖页面
2020/07/05 Javascript
react router4+redux实现路由权限控制的方法
2018/05/03 Javascript
nodejs读取本地中文json文件出现乱码解决方法
2018/10/10 NodeJs
vue项目中实现图片预览的公用组件功能
2018/10/26 Javascript
webpack4.x CommonJS模块化浅析
2018/11/09 Javascript
详解js动态获取浏览器或页面等容器的宽高
2019/03/13 Javascript
vue+element+Java实现批量删除功能
2019/04/08 Javascript
[01:16:01]VGJ.S vs Mski Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
Python常用算法学习基础教程
2017/04/13 Python
python+pyqt5编写md5生成器
2019/03/18 Python
python飞机大战pygame游戏框架搭建操作详解
2019/12/17 Python
英国、欧洲和全球租车服务:Avis英国
2016/08/29 全球购物
软件测试工程师结构化面试题库
2016/11/23 面试题
英语专业推荐信
2013/11/16 职场文书
应用数学自荐书范文
2013/11/24 职场文书
大学生演讲稿
2014/04/25 职场文书
三字经教学反思
2014/04/26 职场文书
迎国庆演讲稿
2014/09/05 职场文书
2015年教师党员承诺书
2015/04/27 职场文书
幼儿园元旦主持词
2015/07/06 职场文书
CSS3 制作的书本翻页特效
2021/04/13 HTML / CSS
MySQL 表空间碎片的概念及相关问题解决
2021/05/07 MySQL
如何获取numpy array前N个最大值
2021/05/14 Python
浅谈Python中对象是如何被调用的
2022/04/06 Python