php - tp5获取请求参数

查看:374
本文介绍了php - tp5获取请求参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

1.问题:照着tp5快速入门手册里学习,运行一段代码和书中的结果(资源类型)不同
2.相关代码:

public function hello(Request $request){
        echo '请求参数';
        dump(input());
        echo 'name:' .$request->param('name');
        echo '资源类型:' .$request->type(). '<br/>';
}

访问路径为:
tp5.com/index/index/hello/test/ddd.html?name=think
书中的结果:资源类型:html,
我运行的结果是:资源类型:xml,
问题出在哪???

还有一个问题,如果把访问路径改成tp5.com/index/index/hello/test/ddd.html/name/think
请求参数结果也变了,
原来路径访问结果:
array(2) {
["name"] => string(5) "think"
["test"] => string(3) "ddd"
}
后来的路径结果:
array(2) {
["test"] => string(8) "ddd.html"
["name"] => string(5) "think"
}
怎么理解tp5.com/index/index/hello/test/ddd.html?name=think这个路径写法?

解决方案

tp5.com/index/index/hello/test/ddd.html?name=think
这种写法,?后边的是直接通过$_GET获取的,
?前面的是框架通过pathinfo解析出来的。

tp5.com/index/index/hello/test/ddd.html/name/think
这个url中没有?则效果与:
tp5.com/index/index/hello/test/ddd.html/name/think.html
是一样的,也就是说最的珠.html可以省略。
前面的/除了默认的模块,控制器与操作之外 ,通过key/value的方式来解析,
所以,test/ddd.html
就解析成["test"] => string(3) "ddd" 了。

这篇关于php - tp5获取请求参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆