ramapriya/http-request

处理HTTP请求的小型库

dev-master 2020-05-01 02:20 UTC

This package is auto-updated.

Last update: 2024-09-29 05:36:15 UTC


README

用于处理HTTP请求的小型PHP-SDK库

安装

在composer.json中添加依赖项

"require": {
    "ramapriya/http-request": "dev-master"
}

安装或更新composer后调用autoload文件

require __DIR__ . "/vendor/autoload.php";

所有方法都是静态的,不需要创建新的类对象

方法

GetRequestMethod() 获取请求方法

$method = Request::GetRequestMethod();

switch($method) {
    case 'GET':
        // your code
        break;
    case 'POST':
        // your code
        break;
}

GET

isGet() 检查GET

if(Request::isGet()!== false) {
    $name = htmlspecialchars(Request::Get('name'));
}

Get($param = null) 获取全局 $_GET. 如果 $param 不为null,则方法返回参数的值 - $_GET["param"],否则 - 对象 $_GET

if(!empty(Request::Get('email'))) {
    $email = htmlspecialchars(Request::Get('email'));
}

GetParams() 获取 $_GET 的所有键,方法返回键的数组

if(!in_array('user_id', Request::GetParams)) {
    echo json_encode("User ID isn't defined!");
}

POST

isPost() 检查POST

Post($param = null) 获取全局 $_POST. 如果 $param 不为null,则方法返回参数的值 - $_POST["param"],否则 - 对象 $_POST

PostParams 获取 $_POST 的所有键,方法返回键的数组

原始请求 (php://input)

之前

$json = file_get_contents("php://input");
$request = json_decode($json);

if(!empty($request)) {
    // your code
}

现在

if(Request::isRaw()) {
    $request = Request::Raw();
}

isRaw() 检查原始请求

Raw($param = null) 获取解码后的原始请求。如果 $param 不为null,则方法返回参数的值,否则 - 解码后的json

RawParams 获取 GetRawParams() 的所有键,方法返回键的数组

头部

GetAllHeaders() 获取请求的所有头部,方法返回数组

$headers = Request::GetAllHeaders();

GetHostName() 方法返回主机名

$domain = Request::GetHostName();

isHttps() 检查HTTPS

if(Request::isHttps() !== true) {
    die("Application works only with HTTPS!");
}

GetUserAgent() 方法返回User-Agent

$userAgent = Request::GetUserAgent();