nullform/http-status

HTTP状态码作为常量

v1.4.0 2024-08-14 11:52 UTC

This package is auto-updated.

Last update: 2024-09-14 12:17:37 UTC


README

HTTP状态码作为简单类中的常量。

RFC 9110, RFC 6585

安装

composer require nullform/http-status

使用

use Nullform\HttpStatus;

// some code...

if ($response->getStatusCode() == HttpStatus::OK) {
    // some code...
} else {
    $error = HttpStatus::getDescription($response->getStatusCode());
}

HttpStatus常量

  • HttpStatus::CONTINUE
  • HttpStatus::SWITCHING_PROTOCOLS
  • HttpStatus::OK
  • HttpStatus::CREATED
  • HttpStatus::ACCEPTED
  • HttpStatus::NON_AUTHORITATIVE_INFORMATION
  • HttpStatus::NO_CONTENT
  • HttpStatus::RESET_CONTENT
  • HttpStatus::PARTIAL_CONTENT
  • HttpStatus::MULTIPLE_CHOICES
  • HttpStatus::MOVED_PERMANENTLY
  • HttpStatus::FOUND
  • HttpStatus::SEE_OTHER
  • HttpStatus::NOT_MODIFIED
  • HttpStatus::USE_PROXY
  • HttpStatus::TEMPORARY_REDIRECT
  • HttpStatus::PERMANENT_REDIRECT
  • HttpStatus::BAD_REQUEST
  • HttpStatus::UNAUTHORIZED
  • HttpStatus::PAYMENT_REQUIRED
  • HttpStatus::FORBIDDEN
  • HttpStatus::NOT_FOUND
  • HttpStatus::METHOD_NOT_ALLOWED
  • HttpStatus::NOT_ACCEPTABLE
  • HttpStatus::PROXY_AUTHENTICATION_REQUIRED
  • HttpStatus::REQUEST_TIMEOUT
  • HttpStatus::CONFLICT
  • HttpStatus::GONE
  • HttpStatus::LENGTH_REQUIRED
  • HttpStatus::PRECONDITION_FAILED
  • HttpStatus::CONTENT_TOO_LARGE
  • HttpStatus::URI_TOO_LONG
  • HttpStatus::UNSUPPORTED_MEDIA_TYPE
  • HttpStatus::RANGE_NOT_SATISFIABLE
  • HttpStatus::EXPECTATION_FAILED
  • HttpStatus::MISDIRECTED_REQUEST
  • HttpStatus::UNPROCESSABLE_CONTENT
  • HttpStatus::UPGRADE_REQUIRED
  • HttpStatus::PRECONDITION_REQUIRED
  • HttpStatus::TOO_MANY_REQUESTS
  • HttpStatus::REQUEST_HEADER_FIELDS_TOO_LARGE
  • HttpStatus::INTERNAL_SERVER_ERROR
  • HttpStatus::NOT_IMPLEMENTED
  • HttpStatus::BAD_GATEWAY
  • HttpStatus::SERVICE_UNAVAILABLE
  • HttpStatus::GATEWAY_TIMEOUT
  • HttpStatus::HTTP_VERSION_NOT_SUPPORTED
  • HttpStatus::NETWORK_AUTHENTICATION_REQUIRED

HttpStatus方法

HttpStatus::isInformational(int $status): bool

请求已接收,继续处理。

HttpStatus::isSuccessful(int $status): bool

请求已成功接收、理解和接受。

HttpStatus::isRedirection(int $status): bool

为了完成请求,需要采取进一步的操作。

HttpStatus::isClientError(int $status): bool

请求包含语法错误或无法满足。

HttpStatus::isServerError(int $status): bool

服务器未能满足明显有效请求。

HttpStatus::getReason(int $status): string

HTTP状态原因短语。

HttpStatus::getDescription(int $status): string

HTTP状态描述。

HttpStatus::getAllReasons(): string[]

所有HTTP状态码(数组键)及其原因短语(数组值)。

HttpStatus::getAllDescriptions(): string[]

所有HTTP状态码(数组键)及其状态描述(数组值)。

HttpStatusCode类

您可以使用HttpStatusCode类来表示任何HTTP状态码。

示例

use Nullform\HttpStatusCode;

// some code...

$status = new HttpStatusCode($response->getStatusCode());

if ($status->isSuccessful()) {
    // some code...
} else {
    throw new \Exception($status->getReason() . '. ' . $status->getDescription());
}