蛋白质/请求

处理当前执行的HTTP请求

1.0.4 2019-05-29 14:37 UTC

This package is auto-updated.

Last update: 2024-08-29 05:06:49 UTC


README

蛋白质 | 请求

处理当前执行的HTTP请求。

安装

composer require proteins/request

通过

use Proteins\Request;

获取输入参数

可以通过 Request::input($key=null, $default=null) 方法检索传递给请求的输入。

该函数在 $_REQUEST 超全局数组中搜索名为 $key 的输入,如果未找到,则返回传递的 $default 值(如果 $default 是可调用的,则解析)。

调用 Request::input() 时,将返回包含所有 $_REQUEST 内容的关联数组。

可以通过 Request::get/post/files/cookie 方法直接访问 $_GET$_POST$_FILES$_COOKIE

echo "Hello, ", Request::input('name','Friend'), '!';
GET /?name=Alyx
Hello, Alyx!

获取URL/URI

Request::URL() 方法返回当前请求URL,包括主机和协议。

Request::URI() 方法返回当前请求URL,不包括主机和协议,相对于前端控制器路径。

DocumentRoot : /web/mysite.com/public
Front Controller Path : /web/mysite.com/public/foo/bar/index.php

Request::URL() –> http://mysite.com/foo/bar/someroute
Request::URI() –> /someroute

获取HTTP方法

Request::method() 方法返回当前请求HTTP方法,小写。

echo Request::method();
get

获取原始/JSON数据

如果请求中传递了数据,则 Request::data($key=null, $default=null) 方法将检索所有(如果没有传递参数则调用)数据或单个属性(如果传递了 $key)。

如果请求数据为空,则返回 $default(如果传递了可调用则解析)。

如果请求数据通过带有 Content-Type: application/json 标头的请求传递,将自动解码。

POST /
Content-Type: application/json

{
 "name": "Chell"
}
print_r( Request::data() );
stdClass Object
(
    [name] => Chell
)