猿问

thinkphp5 url请求get获取中文参数,打印结果为空

直接贴问题,如下:
一、
1.请求地址:http:/localhost/index.php/rec...
2.打印拿到的参数:
代码:dump(input('param.'));
参数结果:

array(3) {
  ["gameName"] => string(0) ""
  ["appId"] => string(2) "06"
  ["userId"] => string(32) "123123"
}

二、
将url请求地址的参数部分改成传统的&拼接的方式,即可获取到中文参数
请求地址:http://localhost/index.php/re...
array(3) {
["gameName"] => string(12) "山西麻将"
["appId"] => string(2) "06"
["userId"] => string(32) "123123"
}

求解第一种请求方式为什么拿不到中文参数?

九州编程
浏览 2253回答 3
3回答

交互式爱情

input是thinkphp5的助手函数,与Request::instance()->param()的一样的,今天翻手册发现Request::instance()->param()是过滤参数后的结果,用Request::instance()->param(false)获取原始数据,再对中文参数用iconv()进行转码即可获取到中文。

繁花不似锦

$request = request(); echo '请求参数:'; dump($request->param()); 你看看这样可以不

慕尼黑的夜晚无繁华

我们来分析一下这个这个链接 http://localhost/index.php/recharge_show/gameName/山西麻将/appId/06/userId/123123 官方标准url解析 http://serverName/index.php/module/controller/action/param/value/... 也就是说recharge_show是模块,gameName是控制器,山西麻将是action,后面的才是对应param/value如果你有使用路由, recharge_show/:gameName/:appId/:userId'=>'模块/控制器/recharge_show',
随时随地看视频慕课网APP
我要回答