thinkphp3 访问路径2

如果访问 http://localhost/index.php/zz.html

一般通过 G_GROUP=‘g’ G_MODULE='m' G_ACTION='a' 来访问__GET[]里面的g m a 参数。如果没有的话都是default 的参数。

主要是得到 GROUP MODULE ACTION 这种没有的情况下都是default 

Home Index index

zz.html在处理PATH_INFO的时候就处理掉了.html留下了zz

 

但是首先要检查路由规则,也就是在checkRoute里面 如果路由规则命中了 那么按照路由规则走。

如果没有命中 按照常规的规则走

tag('route_check',$return);

那么 这里就是执行 route_check的behavior。也就是 CheckRouteBehavior.class.php

里面的run方法 

$regx = trim($_SERVER['PATH_INFO'],'/'); 

$regx就是路径以后的 zz

命中了App\confg\config.php中的路由~

  /^(en\/|cn\/)?([\w-]+)$/i====channel/index?id=:2&l=:1

没有的变量 默认就是原来的。因此最后变成了

Home/Channel/index?id=zz

也就是说跟我们访问

http://localhost/index.php/Home/channel/index?id=zz

是一个道理

访问后 通过zz找到对应的频道 执行channel/index函数通过_getchannel取得数据

得到模型ID 根据模型ID跳转,zz是30 所以走info模型

除开single单页频道 其他的一般都是走_info模型。展示的是

$IndexTemplate = str_ireplace('.html', '', trim($this->_data['IndexTemplate']) );
 $this->display($IndexTemplate);

左边的是subchannel输出的是TopChannel的通道。比如点击的是诊疗服务

thinkphp3 访问路径2_第1张图片

 

左侧输出的就是 诊疗服务的所有子频道

 

 

 

 

你可能感兴趣的:(WEB技术学习)