ThinkPHP项目分组URL生成与URL访问

项目分组中的U方法生成URL

在模板中使用 U方法 自动生成 URL 地址的时候,对于生成其他项目分组地址格式如下:

U('分组名-模块/操作?参数')

例如要在后台 Admin 项目生成查看 Blog 具体文章详情的 URL 地址:

<a href="{:U('Blog-Article/read?id=12345')}" target="_blank">点击查看该文详情</a>

生成的地址可能如下(视具体配置不同而不同):

http://www.zgguan.com/Blog/Article/read/id/12345.shtml

项目分组URL访问方式

启用了项目分组后,多个分组全都会采用同一个入口文件进行访问的形式。因此除了默认的项目分组外,其余分组的URL访问要在入口位置后加上一个项目组名称。

默认分组URL

假设默认分组名称为 Home ,以 www.zgguan.com 域名为例,如下 URL 地址都是等效的:

http://www.zgguan.com/
http://www.zgguan.com/Index/
http://www.zgguan.com/Index/index
http://www.zgguan.com/index.php/
http://www.zgguan.com/index.php/Index/
http://www.zgguan.com/index.php/Index/index
http://www.zgguan.com/index.php/Home/
http://www.zgguan.com/Home/

当然一般情况下,为了 URL 简单美观,都是略去 Home 项目组名称的。

在例子里,也假定系统在 PATHINFO 模式下并使用 Apache rewrite 规则隐藏了入口文件 index.php 。

关于使用 Apache rewrite 规则隐藏了入口文件 index.php 具体参见:《ThinkPHP 利用.htaccess文件的 Rewrite 规则隐藏URL中的 index.php

其他分组URL

以 Admin 项目分组的 User 模块 view 操作为例,如下 URL 地址是等效的:

http://www.zgguan.com/Admin/User/view
http://www.zgguan.com/index.php/Admin/User/view

如果在模板中不使用 U方法 自动生成 URL 地址,那么对应的模板 <a> 标签代码为:

<a href="/Admin/User/view">Admin分组User模块view操作</a>
// 或:
<a href="/Admin/User/view">Admin分组User模块view操作</a>

参考阅读

  1. ThinkPHP 使用 U方法 自动生成URL
  2. ThinkPHP URL访问模式
    ThinkPHP 项目分组配置
    ThinkPHP项目分组目录结构说明
    ThinkPHP项目分组中的模板输出
    ThinkPHP项目分组URL生成与URL访问
    ThinkPHP项目分组中的URL路由使用配置
    项目分组中的redirect重定向(跳转)

zgguan.com(it学习网) — 提供最好的 XHTML教程DIV+CSS教程JavaScript教程PHP教程ThinkPHP教程