>백엔드 개발 >PHP 튜토리얼 >PHP开发框架kohana3 自定义路由设置示例,框架kohana3_PHP教程

PHP开发框架kohana3 自定义路由设置示例,框架kohana3_PHP教程

WBOY
WBOY원래의
2016-07-13 10:23:17957검색

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

由于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 kohana 框架下载下来后怎配置?

not found MODPATH\\database\\classes\\kohana\\db.php [ 63 ] 58 * @param请写明你在流程中是如何调用database或ORM的,也可能是你调用的方法不对。
 

php开发框架怎使用,刚接触框架

平常我也不发言。今天写个代码给你看看:简单的Model层
product.class.php:
class product{
public function getAllProducts(){
$q="SELECT * FROM Product";
$r=$db->query($q);
$proArr=array();
while($row=db->fetchAssoc($r)){
$proArr[]=$row;
}
return $proArr;

}
?>
视图和控制层:
getallproducts.php:
$product=new product();
$ps=$product->getAllProducts();

foreach($ps as $p){
//输出数据库中查出来的
echo $p['name'];
}

我一般就是这样写的 PHP说多了,就是大部分对数组进行编程 ,
大部分都是在页面里输出SQL语句,嵌套HTML,显得页面臃肿,不易维护和扩展
这样分层以后修改比较简单
 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/840645.htmlTechArticlePHP开发框架kohana3 自定义路由设置示例,框架kohana3 由于kohana框架在国内的用户较少,而且新版与kohana2.X差别太大,加之kohana3资料多为英文.让...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.