LoginSignup
7
3

More than 5 years have passed since last update.

【Laravel】Request/Responseオブジェクトの利用

Last updated at Posted at 2019-04-05

コントーラ編集

  • useでRequest/Response追加。
  • アクションを定義時にも引数にRequest/Responseを入れる。
  • この引数に入れた変数がオブジェクトになるので、アクションとして使用していく感じ。

サンプルコード

テストページの表示。
クライアント側からのリクエスト情報を表示。
こちらからのレスポンスを表示。

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Illuminate\Http\Response;

class HelloControllerRR extends Controller
{
    public function index(Request $request, Response $response) {
        $html= <<<EOF

<html>
<head>
<meta charset="UTF-8">
<title>Request/Response</title>
<style>body{font-size:16pt;} h1{font-size:100px; color:#eee;}</style>
</head>
<body>
<h1>Request/Response</h1>
<p>これはRequest/Responseオブジェクトを利用したアクションです。</p>
<hr>
<h3>Request</h3>
<pre>{$request}</pre>
<ul>
<li>url()メソッド:{$request->url()}</li>
<li>fullUrl()メソッド:{$request->fullUrl()}</li>
<li>path()メソッド:{$request->path()}</li>
</ul>
<hr>
<h3>Response</h3>
<pre>{$response}</pre>
</body>
</html>
EOF;

    $response->setContent($html);
    return $response;
    }
}
?>

使用メソッド

Request

  • $request->url():アクセスしたURLを返す。
  • $request->fullUrl():アクセスしたアドレスを完全な形で返す。クエリー文字(?abc=xyzなど)を含む。
  • $request->path():ドメイン下のパス部分だけ返す。

Response

  • this->status():クライアント返答時のステータスコードを返す。正常なら200。
  • this->content():コンテンツの取得。
  • this->setContent(値):引数の値にコンテンツを変更する。

参考書籍

PHPフレームワークLaravel入門
Chapter2-2 Pp.51-55

7
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
3