php获取请求的所有参数,获取请求的参数

本文详细介绍了在PHP中如何发送HTTP请求,包括GET和POST方式,以及如何处理请求参数。同时,讲解了如何在ThinkPHP框架中定义和使用路由,通过`Route::get()`和`Route::post()`进行配置。还展示了不同方式获取请求参数的方法,如直接传参、使用Request对象以及使用助手函数`input()`。
摘要由CSDN通过智能技术生成

发送请求----发送带参数的请求----获取请求参数

如何发送请求

发送请求格式:域名/模块/控制器/方法名

模块是sample

控制器是Test

方法是hello

发送请求 z.cn/sample/Test/hello

b32f5261ecac

文件结构

如何将参数也传过去? 放在问号后面

z.cn/sample/Test/hello?id=123&name=php&age=100

定义路由

如果在application的route.php设置(定义路由)Route::get('hello','sample/Test/hello');

发送请求 z.cn/sample/Test/hello 报错

因为定义了相关的路由,原来的访问方式就不能使用了

正确的请求应为 z.cn/hello?id=123&name=php&age=100

b32f5261ecac

错误信息

post请求时

application的route.php设置(定义路由)Route::post('hello:/id','sample/Test/hello');

请求为

z.cn/hello/123?name=php

post的内容放在body

b32f5261ecac

post请求

如何获取参数

方法1:简单传参

namespace app\sample\controller;

class Test

{

public function hello($id, $name, $age)

{

// 简单的传参 不够灵活

echo $id;

echo $name;

echo $age;

}

}

方法2:使用Request对象

2-1实例化request对象

namespace app\sample\controller;

use think\Request;

class Test

{

public function hello()

{

// 一次获取全部的参数

$all = Request::instance()->param();

var_dump($all);

// 实例化Request对象

/*$id = Request::instance()->param('id');

$name = Request::instance()->param('name');

$age = Request::instance()->param('age');*/

}

}

如何根据参数类型获取参数?

namespace app\sample\controller;

use think\Request;

class Test

{

public function hello()

{

// 只获取?后面的参数 get()

$all = Request::instance()->get();

var_dump($all);

// 只获取路径的参数 (在route定义了的)

$all = Request::instance()->route();

var_dump($all);

// 只获取post的参数

$all = Request::instance()->post();

var_dump($all);

/* get() post() route() 方法里面可以带参数名

* get('name')...

* */

}

}

2-2依赖注入方式

不需要实例化request对象

namespace app\sample\controller;

use think\Request;

class Test

{

public function hello(Request $request)

{

$all = $request->param();

return var_dump($all);

$all = $request->route();

return var_dump($all);

}

}

2-3使用助手函数简化代码

不需要使用think\Request类

namespace app\sample\controller;

class Test

{

public function hello()

{

$all = input('get.');

var_dump($all);

$all = input('post.');

var_dump($all);

$all = input('param.');

var_dump($all);

$all = input('param.age');

echo $all;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值