Input クラス
			input クラスは、HTTP パラメータやサーバ変数、ユーザエージェント情報へのアクセスを提供します。
			
				uri()
				uri メソッドは正しい文字列で構築された現在の URI を検出します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						なし | 
					
					
						| 返り値 | 
						string - スラッシュに続く現在の URI | 
					
					
						| 例 | 
						
							// Example URL: http://localhost/controller/method
echo Input::uri(); // 返り値: /controller/method 
						 | 
					
					
				
			
			
				json($index = null, $default = null)
				json メソッドは、json 形式で送られたリクエストボディをデコードして (and cleaned) 返します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									json リクエストボディの中のキー。多次元配列には、階層をドット (.) で区切ることでアクセスできます。 | 
								 
								
									| $default | 
									null
  | 
									指定された $index が取得できなかったときに返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						array - Format::from_json 結果の配列 | 
					
					
						| 例 | 
						
							$value = \Input::json('key');
// 値が存在しない場合はデフォルト値がセットされる:
$value = \Input::json('key', 'backup-value'); 
						 | 
					
					
				
			
			
				xml($index = null, $default = null)
				xml メソッドは、XML 形式で送られたリクエストボディをデコードして (and cleaned) 返します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									XML リクエストボディの中のキー。多次元配列には、階層をドット (.) で区切ることでアクセスできます。 | 
								 
								
									| $default | 
									null
  | 
									指定された $index が取得できなかったときに返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						array - Format::from_xml 結果の配列 | 
					
					
						| 例 | 
						
							$value = \Input::xml('key');
// 値が存在しない場合はデフォルト値がセットされる:
$value = \Input::xml('key', 'backup-value'); 
						 | 
					
					
				
			
			
				cookie($index = null, $default = null)
				cookie メソッドは、$_COOKIE 変数を読み込みます。
				引数なしで呼び出すと、すべてのクッキーを配列で取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									$_COOKIE 配列のキー。多次元配列には、階層をドット (.) で区切ることでアクセスできます。 | 
								 
								
									| $default | 
									null
  | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						mixed | 
					
					
						| 例 | 
						
							Input::cookie('foo', 'bar'); 
						 | 
					
					
				
			
			
				delete($index = null, $default = null)
				delete メソッドは、[訳注: HTTP の] DELETE メソッドで呼び出されたときに、php://input ストリームからパラメータを読み込みます。引数なしで呼び出すと、配列をすべて取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									php://input ストリームのキー | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						mixed | 
					
					
						| 例 | 
						
							Input::delete('foo', 'bar'); 
						 | 
					
					
				
			
			
				put($index = null, $default = null)
				put メソッドは、[訳注: HTTP の] PUT メソッドで呼び出されたときに、php://input ストリームからパラメータを読み込みます。
				引数なしで呼び出すと、配列をすべて取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									php://input ストリームのキー | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						mixed | 
					
					
						| 例 | 
						
							Input::put('foo', 'bar'); 
						 | 
					
					
				
			
			
				patch($index = null, $default = null)
				patch メソッドは、[訳注: HTTP の] PATCH メソッドで呼び出されたときに、php://input ストリームからパラメータを読み込みます。
				引数なしで呼び出すと、配列をすべて取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									php://input ストリームのキー | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						mixed | 
					
					
						| 例 | 
						
							Input::patch('foo', 'bar'); 
						 | 
					
					
				
			
			
				get($index = null, $default = null)
				get メソッドは、$_GET 変数を読み込みます。引数なしで呼び出すと、配列をすべて取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									$_GET 配列のキー。多次元配列には、階層をドット (.) で区切ることでアクセスできます。 | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						mixed | 
					
					
						| 例 | 
						
							Input::get('foo', 'bar');
// 深い階層にも同様にアクセスできます。
// 次のコードは $_GET['somevar']['foo']['bar'] を返します。
Input::get('somevar.foo.bar'); 
						 | 
					
					
				
			
			
				post($index = null, $default = null)
				post メソッドは、$_POST 変数を読み込みます。引数なしで呼び出すと、配列をすべて取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									$_POST 配列のキー。多次元配列には、階層をドット (.) で区切ることでアクセスできます。 | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						mixed | 
					
					
						| 例 | 
						
							Input::post('foo', 'bar');
// 深い階層にも同様にアクセスできます。
// 次のコードは $_POST['somevar']['foo']['bar'] を返します。
Input::post('somevar.foo.bar'); 
						 | 
					
					
				
			
			
				is_ajax()
				is_ajax メソッドは、コントローラが AJAX から呼び出された場合に true を返します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						なし | 
					
					
						| 返り値 | 
						mixed | 
					
					
						| 例 | 
						
							Input::is_ajax(); // false 
						 | 
					
					
				
			
			
				method($default = 'GET')
				method メソッドは、コントローラの呼び出しに使用された HTTP メソッドを返します。もしヘッダー X-HTTP-Method-Override が送られていた場合、代わりに指定された方法で返されます。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $default | 
									'GET'
  | 
									デフォルトの HTTP メソッド。 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						string | 
					
					
						| 例 | 
						
							Input::method(); // "GET" 
						 | 
					
					
				
			
			
				protocol()
				protocol メソッドは、コントローラの呼び出しに使用された HTTP プロトコルを返します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						なし | 
					
					
						| 返り値 | 
						string | 
					
					
						| 例 | 
						
							Input::protocol(); // "HTTP" 
						 | 
					
					
				
			
			
				ip()
				ip メソッドは、ユーザのグローバル IP アドレスを返します。プロキシサーバ経由でアクセスされた場合、プロキシサーバの IP アドレスを返します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						なし | 
					
					
						| 返り値 | 
						string | 
					
					
						| 例 | 
						
							echo Input::ip(); // 73.194.37.104 (グローバル IP アドレス) 
						 | 
					
					
				
			
			
				real_ip($default = '0.0.0.0', $exclude_reserved = false)
				real_ip メソッドは、ユーザの “実際の” IP アドレスを返します。プロキシサーバからのアクセスだと検知すると、プロキシサーバが付加するヘッダから、ユーザのプライベート IP アドレスを特定しようと試みます。この情報が与えられない場合、グローバル IP アドレスを返します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $default | 
									'0.0.0.0'
  | 
									有効な IP アドレスが検知されなかったときに返す値 | 
								 
								
									| $exclude_reserved | 
									false
  | 
									true にすると、プライベート IP アドレスや特殊な IP アドレスのレンジは除外し、グローバル IP アドレスのみを返します。 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						string | 
					
					
						| 例 | 
						
							echo Input::real_ip(); // 10.76.12.199 (プロキシサーバの後ろのプライベート IP アドレス) 
						 | 
					
					
				
				$exclude_reserved を true にすると、以下のレンジは結果から除外されます:
IPv4:
10.0.0.0/8     // private use network (rfc1918)
172.16.0.0/12  // private use network (rfc1918)
192.168.0.0/16 // private use network (rfc1918)
0.0.0.0/8      // "this" network (rfc1700)
169.254.0.0/16 // link local network (rfc3927)
192.0.2.0/24   // test net (rfc3330)
224.0.0.0/4    // Multicast (rfc3171)
240.0.0.0/4    // Reserved for Future Use (rfc1700)
IPv6:
fc00::/7       // unique-local addresses (rfc4193)
::/128         // unspecified address (rfc4291)
::1/128        // loopback address (rfc4291)
fe80::/10      // link local unicast (rfc4291)
2001:db8::/32  // documentation addresses (rfc3849)
5f00::/8       // 6Bone
3ffe::/16      // 6Bone
::ffff:0:0/96  // IPv4-Mapped addresses (rfc4291)
2001:10::/28   // ORCHID addresses (rfc4843)
::/0           // default unicast route address
			
			
				server($index = null, $default = null)
				server メソッドは、$_SERVER 変数にアクセスします。
					引数なしで呼び出すと、配列をすべて取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									$_SERVER 配列のキー | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						string | 
					
					
						| 例 | 
						
							Input::server('HTTP_HOST'); // "localhost:8080" 
						 | 
					
					
				
			
			
				referrer($default = '')
				referrer メソッドは、$_SERVER 配列からリファラを取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						string | 
					
					
						| 例 | 
						
							Input::referrer(); 
						 | 
					
					
				
			
			
				user_agent($default = '')
				user_agent は、$_SERVER 配列からユーザエージェントを取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						string | 
					
					
						| 例 | 
						
							Input::user_agent(); 
						 | 
					
					
				
			
			
				all()
				all メソッドは、GET, POST, PUT および DELETE 配列のすべてを取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| 返り値 | 
						array | 
					
					
						| 例 | 
						
							Input::all(); 
						 | 
					
					
				
			
			
				file($index = null, $default = null)
				file メソッドは、FILE 配列の要素を取得します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									$_FILE 配列のキー | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						string|array | 
					
					
						| 例 | 
						
							Input::file(); 
						 | 
					
					
				
			
			
				param($index = null, $default = null)
				param メソッドは、GET, POST, PUT または DELETE 配列のいずれかを読み込みます
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									$_GET, $_POST, $_PUT または $_DELETE 配列のキー | 
								 
								
									| $default | 
									任意 | 
									配列の要素が見つからない場合に返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						string|array | 
					
					
						| 例 | 
						
							Input::param(); 
						 | 
					
					
				
			
			
				extension()
				extension メソッドは、現在の URI の拡張子を返します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						なし | 
					
					
						| 返り値 | 
						string|null | 
					
					
						| 例 | 
						
							// Example URL: http://localhost/test/
echo Input::extension(); // NULL
// Example URL: http://localhost/test.html
echo Input::extension(); // 'html'
 
						 | 
					
					
				
			
			
				
				headers メソッドは、現在のリクエストにおける特定または全ての HTTP ヘッダーを返します。
				
					
					
						| 静的 | 
						はい | 
					
					
						| パラメータ | 
						
							
								
									| 引数 | 
									デフォルト | 
									説明 | 
								 
								
									| $index | 
									任意 | 
									HTTP ヘッダーの名前。 | 
								 
								
									| $default | 
									任意 | 
									指定された $index が取得できなかったときに返す値 | 
								 
							 
						 | 
					
					
						| 返り値 | 
						array | 
					
					
						| 例 | 
						
							// content length が取得できるかどうかを確認する
if ($headers = \Input::headers() and array_key_exists('Content-Length', $headers))
{
	echo 'このリクエストでセットされている content length は ', $headers['Content-Length'];
}
// もしくは直接取得する
if ($header = \Input::headers('Content-Length', false))
{
	echo 'このリクエストでセットされている content length は ', $header;
}
 
						 |