Thinkphp URLルーティング構成

WBOY
WBOYオリジナル
2016-06-13 12:36:33888ブラウズ

Thinkphp url路由配置

配置url建议使用配置的php开发环境,集成的没能成功  

ThinkPHP 框架支持url路由。所谓url路由 含义跟网络中的路由相似。用户请求的url信息进行检查来确定到底调用哪个模块和操作。

通过配置url路由可以使网站名称更加短,也更容易记。

主要是有两种方法

1 隐藏index.php

2 将模块和操作用简单数字或者字母进行代替

首先隐藏index.php

隐藏index.php

1 找到apache配置文件将

LoadModule rewrite_module modules/mod_rewrite.so前面的#号去掉

2 寻找apache的配置文件中AllowOverride None这句话,将None改为 All 我的共有3处地方需要修改

3

<IfModule mod_rewrite.c>

RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d

RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]

</IfModule>

这句话保存为.htaccess文件放到入口文件的同级目录下

图示

4 重启Apache即可


用字符代替分组 模块操作

1 设置在项目配置文件中开启url路由功能

将下面这句添加在项目配置文件中

'URL_ROUTER_ON'=>true,   //开启url路由

2 就是对 分组 模块 操作的配置

先把后台代码贴上

    //进入发布新闻页面
    public function release(){
        dump("mode值:".$_GET['mode']);
        dump("fun值".$_GET['fun']);
        dump("idcard值".$_GET['idcard']);
        dump("name值".$_GET['name']);
        dump("id值".$_GET['id']);
    }
项目配置文件中几个不同url规则

第一个规则

	'URL_ROUTE_RULES'=>array(
	   'news/:mode/:fun'=>'Admin/News/release?idcard=334&name=buyingfei&id=3', //:mode :fun 代表变量 可以传递任何职给后台后台可以通过get接收
	),
访问 和结果输出

上图片


可以看出规则 访问 结果之间关系

第二条规则

	'URL_ROUTE_RULES'=>array(
         '34'=>array('Admin/News/release'),  // http://localhost/test/index.php/34
	),
结果和访问方法上图片


第三条规则:

	'URL_ROUTE_RULES'=>array(
	   "news/:id"=>"Admin/News/release",
	),
访问方法和结果


掌握上面三条规则可以解决大多数项目中遇到问题


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。