TP5路由获取参数

TP5能自动获取到参数,具体是这么做的,我的路由是get请求

Route::get('hello/:id','samiple/test/hello');

我类的方法:

public function hello($id,$name,$age){
    echo $id;
    echo '|';
    echo $name;
    echo '|';
    echo $age;
    return "hello word";
}

路径输入:z.cn:8080/hello/123?name=aaaa&age=132

结果返回:123|aaaa|132hello word

参数传递成功

第二种传递参数的方法:

public function hello(){
   $id = Request::instance()->param('id');
   $name = Request::instance()->param('name');
   $age = Request::instance()->param('age');
   echo $id;
   echo $name;
   echo $age;
}
第三种传递参数的方法:
public function hello(){
    $all = Request::instance()->param();
    var_dump($all);
}
一次获取到所有的参数,打印出来的是一个数组

要是只获取到?后面的所有参数:

public function hello(){
    $all = Request::instance()->get();
    var_dump($all);
}

要是只获取到路径上面的参数:

public function hello(){
    $all = Request::instance()->route();
    var_dump($all);
}

TP5自带的属性获取到所有参数:

public function hello(){
    $all = input('param.');
    var_dump($all);
}

后面跟个param.代表所有,返回的是数组

public function hello(){
    $all = input('param.age');
    var_dump($all);
}
依赖注入的方式进行参数获取:
public function hello(Request $request){
    $all = $request -> param();
    var_dump($all);
}

你不用知道传过来的是什么参数,只要知道这样就能获取到传过来的所有参数都能获取到,并且转成数组



猜你喜欢

转载自blog.csdn.net/qq_29109193/article/details/80919891