目的
- リクエストの処理を分離することでリクエストに起因するエラーを封じ込める
目次
- Requestクラスを作る
- index.php で GETパラメータを取得する
- ブラウザで確認する
Requestクラスを作る
$ cd /opt/project/stampede
5 touch Request.php
Request.php
<?php
class Request
{
/**
*
*/
private $get = [];
/**
*
*/
private $post = [];
/**
*
* @var
*/
private static $instance = null;
/**
* コンストラクタ
*
* @return void
*/
private function __construct()
{
$this->get = $_GET;
$this->post = $_POST;
}
/**
* リクエストクラスのインスタンスを取得する
*
* @return object
*/
public static function getInstance()
{
if (is_null(self::$instance) === true) {
self::$instance = new self;
}
return self::$instance;
}
/**
* 全てのリクエストパラメータを取得する
*
* @return array
*/
public function all()
{
return array_merge($this->get, $this->post);
}
/**
* 任意のGETパラメータを取得
*
* @param string $key
* @param mixed $default
* @return string
*/
public function query(string $key, $default = null)
{
if (isset($this->get[$key]) === true) {
return $this->get[$key];
}
if (is_null($default) === false) {
return $default;
}
// エラー
}
}
index.php で GETパラメータを取得する
index.php
<?php
ini_set('display_errors', "On");
require_once('/opt/project/stampede/Request.php');
$request = Request::getInstance();
$params = $request->all();
header('Content-Type: text/plain; charset=UTF8');
echo print_r($params, true);
exit;
ブラウザで確認する
https://192.168.56.110/stampede/index.php?name=sato&hoge[]=hare1&hoge[]=hare2
次の記事
[オレオレ04] Viewクラスを作る
前の記事
[オレオレ02] シンボリックリンク