`

TP5 URL和路由

阅读更多

application\index\controller\Index.php

<?php
namespace app\index\controller;
class Index extends Controller
{
     public function hello($name = 'World')
    {
        return 'Hello,' . $name . '!';
    }
}

 

application\index\controller\Blog.php

<?php
namespace app\index\controller;
class Blog
{
    public function get($id)
    {
        return '查看id=' . $id . '的内容';
    }
    public function read($name)
    {
        return '查看name=' . $name . '的内容';
    }
    public function archive($year, $month)
    {
        return '查看' . $year . '/' . $month . '的归档内容';
    }
}

 

application\route.php 路由配置

<?php
return [
	//http://tp5.com/hello 输出:Hello,World!
    //http://tp5.com/hello/onestopweb 输出:Hello,onestopweb!
    //'hello/[:name]' => 'index/hello',
    //http://tp5.com/hello.html 输出:Hello,World!
    //http://tp5.com/hello/onestopweb.html 输出:Hello,onestopweb!
    'hello/[:name]' => ['index/hello', ['method' => 'get', 'ext' => 'html']],
    
    //http://tp5.com/blog/5 输出:查看id=5的内容
    //'blog/:id'          => ['blog/get', ['method' => 'get'], ['id' => '\d+']],
    //http://tp5.com/blog/onestopweb 输出:http://tp5.com/blog/onestopweb
    //'blog/:name'        => ['blog/read', ['method' => 'get'], ['name' => '\w+']],
    //http://tp5.com/blog/2015/05 输出:http://tp5.com/blog/2015/05
	//'blog/:year/:month' => ['blog/archive', ['method' => 'get'], ['year' => '\d{4}', 'month' => '\d{2}']],
	//http://tp5.com/blog-2015-06 输出:http://tp5.com/blog-2015-06
    //'blog-<year>-<month>' => ['blog/archive', ['method' => 'get'], ['year' => '\d{4}', 'month' => '\d{2}']],
    
    // 全局变量规则定义
    '__pattern__'         => [
        'name'  => '\w+',
        'id'    => '\d+',
        'year'  => '\d{4}',
        'month' => '\d{2}',
    ],
    // 路由规则定义
    //http://tp5.com/blog/5 输出:查看id=5的内容
    'blog/:id'            => 'blog/get',
    //http://tp5.com/blog/onestopweb 输出:http://tp5.com/blog/onestopweb
    'blog/:name'          => 'blog/read',
    //http://tp5.com/blog-2015-06 输出:http://tp5.com/blog-2015-06
    'blog-<year>-<month>' => 'blog/archive',
    
	// 定义了局部变量规则
	//http://tp5.com/blog/onest 大于等于长度5 输出:查看name=onest的内容
    //'blog/:name'          => ['blog/read', ['method' => 'get'], ['name' => '\w{5,}']],
    
    //提示:
    //http://tp5.com/blog/5.html 等于同:http://tp5.com/blog/5 输出:查看id=5的内容
];

 

 

 

 

 

 

 

 

1
1
分享到:
评论

相关推荐

    TP5url短链接生成与跳转

    TP5短链接生成与跳转,短链接生成 地址:http://t.cn/setshorturl.html?sign=xxxxxxxxxxxxxxxxx post参数: urls 原链接地址 必填 title 描述信息 非必填 返回值: { "status": 0, "msg": "短链接生成成功", "data":...

    tp5.1 框架路由操作-URL生成实例分析

    主要介绍了tp5.1 框架路由操作-URL生成,结合实例形式分析了tp5.1 框架针对路由操作URL生成的相关实现原理、操作技巧与注意事项,需要的朋友可以参考下

    ThinkPHP5.0的助手函数汇总

    3. * @param string $url 路由地址 4. * @param string|array $vars 变量 5. * @param bool|string $suffix 生成的URL后缀 6. * @param bool|string $domain 域名 7. * @return string 8. */ 9. url($url = '', $var...

    易语言通过post操作TP-LINK路由拨号源码.e

    易语言通过POST的访问方式操作TP类型的路由器进行拨号,而且是一秒拨号,后面可以自己加入过滤IP的 如下为部分代码 .版本 2 .支持库 iext url = “http://” + 全_访问IP + “/stok=” + 全_Stok + “/ds...

    ThinkPHP5 快速入门教程 PDF.rar

    二、URL和路由 三、请求和响应 四、数据库 五、查询语言 六、模型和关联 (1)模型定义 (2)基础操作 (3)读取器和修改器 (4)类型转换和自动完成 (5)查询范围 (6)输入和验证 (7)关联 (8)模型输出 七、...

    提升ThinkPHP5速度性能的几个技巧.zip

    提升ThinkPHP5速度性能的几个技巧.zip

    thinkphp框架实现路由重定义简化url访问地址的方法分析

    主要介绍了thinkphp框架实现路由重定义简化url访问地址的方法,结合实例形式分析了thinkphp路由重定义及url地址访问相关操作技巧与注意事项,需要的朋友可以参考下

    浅析ThinkPHP中的pathinfo模式和URL重写

    在不考虑路由的情况下,第一个参数会被解析成模块名称(如果启用了分组的话,则依次往后递推),第二个参数会被解析成操作,后面的参数是显式传递的,而且必须成对出现,例如: 复制代码 代码如下:...

    thinkphp中U方法按路由规则生成url的方法

    tp开启路由后,使用U方法是不会按路由规则生成url的,一般我们是要手动修改模版,把里面的U方法去掉,手动修改链接,如果是已经写好的程序,后期才添加路由,修改起链接就太麻烦了 今天无聊就修改了一下U方法,让它...

    让ThinkPHP支持大小写url地址访问的方法

    主要介绍了让ThinkPHP支持大小写url地址访问的方法,是Windows环境下开发ThinkPHP程序非常实用的技巧,需要的朋友可以参考下

    yfcmf-tp6:yfcmf新版本,基于thinkphp6.0和fastadmin

    为访问的url在线命令和插件都可以正常使用,插件和TP5.0版本不通用,需要简单调整后插件才可正常使用插件基础文件采用服务方式注入插件增加自定义服务功能,插件根目录下的service文件夹,系统会自动载入service内的...

    Thinkphp5 如何隐藏入口文件index.php(URL重写)

    路由可以拒绝或者接受某个URL请求,并进行分发调度,而且还有一个副作用是因为路由规则可以随意定义,因此可以让你的URL请求地址更优雅,因为不会暴露实际的URL地址,也就意味着更安全——《ThinkPHP5路由完全指南》...

    ThinkPHP5.0-快速入门手册合集(新手教程版)

    基于thinkphp官方制作的可以快速上手thinkphp5教程,该手册围绕WEB开发和API开发常用的一系列基础功能进行循序渐进的讲解,详细的介绍了thinkphp5的基础、URL和路由、请求和响应、数据库、查询语言、模型和关联、...

    还儿童一个健康上网环境,正式开启我的路由器URL网址白名单之旅

    URL黑名单总会有漏洞,而且还有个不好的地方是会诱惑小孩花大量时间和精力去不停的尝试。 唯有URL白名单才能彻底解决烦恼! 就像很多大人一样,很多事情唯有让他撞了南墙,彻底死心了才愿放弃! 当然如果能做的到对...

    (388)-08ThinkPHP5.0+小程序商城构建全栈应用

    第3章 模块、路由与获取请求参数 本小节中我们将对TP5的入口文件、三种URL访问模式、虚拟域名配置、路由定义等知识做详细的讲解。 3-1 来编写一个简单的模块(多模块与模块命名空间) 3-2 配置虚拟域名简化URL路径 3...

    修改apache配置文件去除thinkphp url中的index.php

    例如你的原路径是 http://localhost/test/index.php/index/add那么现在的地址是 http://localhost/test/index/add如何去掉index.php呢? 1、httpd.conf配置文件中加载了mod_rewrite.so模块 //在APACHE里面去配置复制...

Global site tag (gtag.js) - Google Analytics