リクエストクラス

リクエストクラスは、HTTPリクエストをオブジェクト指向で表現したものです。これは、ブラウザからアプリケーションへのリクエストなどの受信リクエストと、アプリケーションからサードパーティアプリケーションへのリクエストの送信に使用されるような送信リクエストの両方に対応するように設計されています。

このクラスは両方に必要な共通機能を提供しますが、どちらの場合も、Requestクラスを拡張して特定の機能を追加するカスタムクラスがあります。実際には、これらのクラスを使用する必要があります。

詳細な使用法については、IncomingRequestクラスおよびCURLRequestクラスのドキュメントを参照してください。

クラスリファレンス

class CodeIgniter\HTTP\Request
getIPAddress()
戻り値:

ユーザーのIPアドレス。検出可能な場合。IPアドレスが有効なIPアドレスでない場合は、0.0.0.0が返されます。

戻り値の型:

string

現在のユーザーのIPアドレスを返します。IPアドレスが有効でない場合、このメソッドは0.0.0.0を返します。

<?php

echo $request->getIPAddress();

重要

このメソッドは、Config\App::$proxyIPsの設定を考慮し、許可されたIPアドレスのHTTPヘッダーによって報告されたクライアントIPアドレスを返します。

isValidIP($ip[, $which = ''])

バージョン 4.0.5 から非推奨: 代わりにバリデーションを使用してください。

重要

このメソッドは非推奨です。将来のリリースで削除されます。

パラメーター:
  • $ip (string) – IPアドレス

  • $which (string) – IPプロトコル(ipv4またはipv6

戻り値:

アドレスが有効な場合はtrue、そうでない場合はfalse

戻り値の型:

bool

IPアドレスを入力として受け取り、有効かどうかによってtrueまたはfalse(boolean)を返します。

上記の$request->getIPAddress()メソッドは、IPアドレスを自動的に検証します。

<?php

if (! $request->isValidIP($ip)) {
    echo 'Not Valid';
} else {
    echo 'Valid';
}

オプションの2番目の文字列パラメーターとして、IP形式を指定するipv4またはipv6を受け入れます。デフォルトでは、両方の形式がチェックされます。

getMethod([$upper = false])

重要

$upperパラメーターの使用は非推奨です。将来のリリースで削除されます。

パラメーター:
  • $upper (bool) – リクエストメソッド名を大文字または小文字で返すかどうか

戻り値:

HTTPリクエストメソッド

戻り値の型:

string

大文字または小文字で設定するオプション付きで、$_SERVER['REQUEST_METHOD']を返します。

<?php

echo $request->getMethod(true);  // Outputs: POST
echo $request->getMethod(false); // Outputs: post
echo $request->getMethod();      // Outputs: post
setMethod($method)

バージョン 4.0.5 から非推奨: 代わりにCodeIgniter\HTTP\Request::withMethod()を使用してください。

パラメーター:
  • $method (string) – リクエストメソッドを設定します。リクエストのスプーフィング時に使用されます。

戻り値:

このリクエスト

戻り値の型:

リクエスト

withMethod($method)

バージョン 4.0.5 で新規追加。

パラメーター:
  • $method (string) – リクエストメソッドを設定します。

戻り値:

新しいリクエストインスタンス

戻り値の型:

リクエスト

getServer([$index = null[, $filter = null[, $flags = null]]])
パラメーター:
  • $index (mixed) – 値の名前

  • $filter (int) – 適用するフィルターのタイプ。PHPマニュアルにフィルターのリストがあります。

  • $flags (int|array) – 適用するフラグ。PHPマニュアルにフラグのリストがあります。

戻り値:

$_SERVERで見つかった項目の値。見つからない場合はnull

戻り値の型:

mixed

このメソッドは、IncomingRequestクラスgetPost()getGet()、およびgetCookie()メソッドと同じで、サーバーデータ($_SERVER)を取得する点が異なります。

<?php

$request->getServer('some_data');

複数の$_SERVER値の配列を返すには、必要なすべてのキーを配列として渡します。

<?php

$request->getServer(['SERVER_PROTOCOL', 'REQUEST_URI']);
getEnv([$index = null[, $filter = null[, $flags = null]]])

バージョン 4.4.4 で非推奨: このメソッドは当初から機能していません。env() を代わりに使用してください。

パラメーター:
  • $index (mixed) – 値の名前

  • $filter (int) – 適用するフィルターのタイプ。PHPマニュアルにフィルターのリストがあります。

  • $flags (int|array) – 適用するフラグ。PHPマニュアルにフラグのリストがあります。

戻り値:

$_ENV の値が存在する場合はその値を、存在しない場合は null を返します。

戻り値の型:

mixed

このメソッドは、IncomingRequest クラスgetPost()getGet()getCookie() メソッドと同じで、環境データ ($_ENV) を取得する点が異なります。

<?php

$request->getEnv('some_data');

複数の $_ENV の値を配列で返すには、必要なキーをすべて配列として渡します。

<?php

$request->getEnv(['CI_ENVIRONMENT', 'S3_BUCKET']);
setGlobal($method, $value)
パラメーター:
  • $method (string) – メソッド名

  • $value (mixed) – 追加するデータ

戻り値:

このリクエスト

戻り値の型:

リクエスト

$_GET$_POST などの PHP グローバルの値を手動で設定できます。

fetchGlobal($method[, $index = null[, $filter = null[, $flags = null]]])
パラメーター:
  • $method (string) – 入力フィルタ定数

  • $index (mixed) – 値の名前

  • $filter (int) – 適用するフィルターのタイプ。PHPマニュアルにフィルターのリストがあります。

  • $flags (int|array) – 適用するフラグ。PHPマニュアルにフラグのリストがあります。

戻り値の型:

mixed

クッキー、GET、POST などのグローバル変数から1つまたは複数のアイテムを取得します。オプションで、フィルターを渡して、取得時に入力をフィルタリングできます。