バグ解消法、お役立ち情報など

【Laravel】HTTPステータスコードの定数を使う方法

logo

はじめに

処理を記述する際に、定数を使用することでマジックナンバーを減らせます。

今回はLaravelでHTTPステータスコードの定数(200, 404など)を使う際に便利な、定義済みの定数をご紹介します。

HTTPステータスコードの定数を使う方法

LaravelでHTTPステータスコードの定数を使用するには、下記クラスを使用します。

/Path/to/application/laravel/vendor/symfony/http-foundation/Response.php

上記ファイルには、下記のように定数が記述されています。

Response.php
class Response { public const HTTP_CONTINUE = 100; public const HTTP_SWITCHING_PROTOCOLS = 101; public const HTTP_PROCESSING = 102; // RFC2518 public const HTTP_EARLY_HINTS = 103; // RFC8297 public const HTTP_OK = 200; public const HTTP_CREATED = 201; public const HTTP_ACCEPTED = 202; public const HTTP_NON_AUTHORITATIVE_INFORMATION = 203; public const HTTP_NO_CONTENT = 204; public const HTTP_RESET_CONTENT = 205; public const HTTP_PARTIAL_CONTENT = 206; public const HTTP_MULTI_STATUS = 207; // RFC4918 public const HTTP_ALREADY_REPORTED = 208; // RFC5842 public const HTTP_IM_USED = 226; // RFC3229 public const HTTP_MULTIPLE_CHOICES = 300; ...

上記の定数を自分のクラスで使用するには、まずuse文で読み込みます。

任意のクラス
use Symfony\Component\HttpFoundation\Response;

そして、実際に定数を呼び出します。

$response->status() が「200」かどうかを判定する処理は以下の通りです。

任意のクラス
if ($response->status() === Response::HTTP_OK) { return 0; }

もし、use時に他のResponseクラスと名前がかぶってしまった場合は、別名(エイリアス)を設定しましょう。

任意のクラス
use Symfony\Component\HttpFoundation\Response as HttpResponse; if ($response->status() === HttpResponse::HTTP_OK) { return 0; }

このように定義済みの定数を使用することで、実装が楽になります!

バグ解消法、お役立ち情報など