kotchasan

Request extends AbstractRequest
in package
implements RequestInterface

คลาสสำหรับจัดการตัวแปรต่างๆจาก Server

Tags
author

Goragod Wiriya admin@goragod.com

since
1.0

Interfaces, Classes and Traits

RequestInterface
Representation of an outgoing, client-side request.

Table of Contents

$headers  : array<string|int, mixed>
$method  : string
$protocol  : string
$requestTarget  : string
$stream  : StreamInterface
$uri  : Uri
$attributes  : array<string|int, mixed>
$cookieParams  : array<string|int, mixed>
$_COOKIE
$parsedBody  : array<string|int, mixed>
$_POST
$queryParams  : array<string|int, mixed>
$_GET
$serverParams  : array<string|int, mixed>
$_SERVER
$uploadedFiles  : Files
__construct()  : mixed
init Class
cookie()  : InputItem|Inputs
อ่านค่าจากตัวแปร COOKIE คืนค่า InputItem หรือ Collection ของ InputItem
createToken()  : string
ฟังก์ชั่นสร้าง token
createUriWithGet()  : Uri
สร้างคลาสจากลิงค์ และ รวมค่าที่มาจาก $_GET ด้วย
createUriWithGlobals()  : Uri
สร้างคลาสจากลิงค์ และ รวมค่าที่มาจาก $_GET และ $_POST ด้วย
createUriWithPost()  : Uri
สร้างคลาสจากลิงค์ และ รวมค่าที่มาจาก $_POST ด้วย
filterRequestKey()  : array<string|int, mixed>
key ของ Input ต่างๆเป็น ตัวเลข ภาษาอังกฤษ และ [ ] _ - เท่านั้น
get()  : InputItem|Inputs
อ่านค่าจากตัวแปร GET คืนค่า InputItem หรือ Collection ของ InputItem
getAcceptableLanguages()  : array<string|int, mixed>
คืนค่ารายการภาษาที่รองรับ จาก HTTP header
getAttribute()  : mixed
อ่านค่า attributes ที่ต้องการ
getAttributes()  : array<string|int, mixed>
คืนค่า attributes ทั้งหมด
getBody()  : StreamInterface
อ่าน stream
getClientIp()  : string|null
ฟังก์ชั่น อ่าน ip ของ client คืนค่า IP ที่อ่านได้
getCookieParams()  : array<string|int, mixed>
คืนค่าจากตัวแปร $_COOKIE
getHeader()  : array<string|int, string>
อ่าน header ที่ต้องการ ผลลัพท์เป็น array คืนค่าแอเรย์ของ header ถ้าไม่พบคืนค่าแอเรย์ว่าง
getHeaderLine()  : string
อ่าน header ที่ต้องการ ผลลัพท์เป็น string คืนค่ารายการ header ทั้งหมดที่พบเชื่อมต่อด้วย ลูกน้ำ (,) หรือคืนค่าข้อความว่าง หากไม่พบ
getHeaders()  : array<string|int, mixed>
คืนค่า header ทั้งหมด ผลลัพท์เป็น array
getMethod()  : string
อ่านค่า HTTP method returns the request method
getParsedBody()  : null|array<string|int, mixed>|object
คืนค่าจากตัวแปร $_POST
getProtocolVersion()  : string
คืนค่าเวอร์ชั่นของโปรโตคอล เช่น 1.1, 1.0
getQueryParams()  : null|array<string|int, mixed>|object
คืนค่าจากตัวแปร $_GET
getRequestTarget()  : string
อ่านค่า request target
getServerParams()  : array<string|int, mixed>
คืนค่าจากตัวแปร $_SERVER
getUploadedFiles()  : Files
คืนค่าไฟล์อัปโหลด FILES
getUri()  : Uri
อ่าน Uri
globals()  : InputItem|Inputs
อ่านค่าจากตัวแปร GLOBALS เช่น $_POST $_GET $_SESSION $_COOKIE ตามที่ระบุใน $keys ตามลำดับ เช่น array('POST', 'GET') หมายถึงอ่านจาก $_POST ก่อน ถ้าไม่พบจะอ่านจาก $_GET และถ้าไม่พบอีกจะคืนค่า $default
hasHeader()  : bool
ตรวจสอบว่ามี header หรือไม่ คืนค่า true ถ้ามี
initSession()  : bool
ฟังก์ชั่นเริ่มต้นใช้งาน session
isAjax()  : bool
ตรวจสอบว่าเรียกมาโดย Ajax หรือไม่ คืนค่า true ถ้าเรียกมาจาก Ajax (XMLHttpRequest)
isReferer()  : bool
ฟังก์ชั่น ตรวจสอบ referer คืนค่า true ถ้า referer มาจากเว็บไซต์นี้
isSafe()  : bool
ฟังก์ชั่น ตรวจสอบ token ที่มาจากฟอร์ม และ ตรวจสอบ Referer ด้วย รับค่าที่มาจาก $_POST เท่านั้น ฟังก์ชั่นนี้ต้องเรียกต่อจาก initSession() เสมอ อายุของ token กำหนดที่ TOKEN_LIMIT คืนค่า true ถ้า token ถูกต้องและไม่หมดอายุ
map()  : mixed
รวมแอเรย์ $_GET $_POST เป็นข้อมูลเดียวกัน
post()  : InputItem|Inputs
อ่านค่าจากตัวแปร $_POST ถ้าไม่พบเลยคืนค่า $default คืนค่า InputItem หรือ แอเรย์ของ InputItem
removeToken()  : mixed
ลบ token
request()  : InputItem|Inputs
อ่านค่าจากตัวแปร $_POST $_GET $_COOKIE(options) ตามลำดับ คืนค่ารายการแรกที่พบ ถ้าไม่พบเลยคืนค่า $default คืนค่า InputItem หรือ แอเรย์ของ InputItem
server()  : mixed
อ่านค่าจากตัวแปร $_SERVER ถ้าไม่พบเลยคืนค่า $default
session()  : InputItem|Inputs
อ่านค่าจากตัวแปร $_SESSION ถ้าไม่พบเลยคืนค่า $default คืนค่า InputItem หรือ Collection ของ InputItem
setSession()  : static
กำหนดค่าตัวแปร $_SESSION
withAddedHeader()  : static
เพิ่ม header ใหม่
withAttribute()  : static
กำหนดค่า attributes
withBody()  : static
กำหนด stream
withCookieParams()  : static
กำหนดค่า cookieParams
withHeader()  : static
กำหนด header แทนที่รายการเดิม
withHeaders()  : static
กำหนด header พร้อมกันหลายรายการ แทนที่รายการเดิม
withMethod()  : static
กำหนดค่า HTTP method
withoutAttribute()  : static
ลบ attributes
withoutHeader()  : static
ลบ header
withParsedBody()  : static
กำหนดค่า parsedBody
withProtocolVersion()  : static
กำหนดเวอร์ชั่นของโปรโตคอล
withQueryParams()  : static
กำหนดค่า queryParams
withRequestTarget()  : static
กำหนดค่า request target
withUploadedFiles()  : static
กำหนดค่า uploadedFiles
withUri()  : static
กำหนดค่า Uri
filterHeader()  : mixed
ตรวจสอบความถูกต้องของ header
getRequestHeaders()  : array<string|int, mixed>
ฟังก์ชั่นคืนค่า HTTP Header
createInputItem()  : InputItem|Inputs
อ่านค่าจาก $source คืนค่า InputItem หรือ Collection ของ InputItem

Properties

$attributes

private array<string|int, mixed> $attributes = array()

$cookieParams

$_COOKIE

private array<string|int, mixed> $cookieParams

$parsedBody

$_POST

private array<string|int, mixed> $parsedBody

$queryParams

$_GET

private array<string|int, mixed> $queryParams

$serverParams

$_SERVER

private array<string|int, mixed> $serverParams

$uploadedFiles

private Files $uploadedFiles

Methods

__construct()

init Class

public __construct([bool $with_header = false ]) : mixed
Parameters
$with_header : bool = false

true คืนค่า HTTP Header ด้วย, false (default) ไม่รวม HTTP Header

Return values
mixed

อ่านค่าจากตัวแปร COOKIE คืนค่า InputItem หรือ Collection ของ InputItem

public cookie(string $name[, mixed $default = '' ]) : InputItem|Inputs
Parameters
$name : string

ชื่อตัวแปร

$default : mixed = ''

ค่าเริ่มต้นหากไม่พบตัวแปร

Return values
InputItem|Inputs

createToken()

ฟังก์ชั่นสร้าง token

public createToken() : string
Return values
string

createUriWithGet()

สร้างคลาสจากลิงค์ และ รวมค่าที่มาจาก $_GET ด้วย

public static createUriWithGet([string $uri = 'index.php' ][, array<string|int, mixed> $exclude = array() ]) : Uri
Parameters
$uri : string = 'index.php'

ค่าเริ่มต้นคือ index.php

$exclude : array<string|int, mixed> = array()

รายการแอเรย์ของ $_GET ที่ไม่ต้องการให้รวมอยู่ใน URL

Return values
Uri

createUriWithGlobals()

สร้างคลาสจากลิงค์ และ รวมค่าที่มาจาก $_GET และ $_POST ด้วย

public createUriWithGlobals([string $uri = 'index.php' ][, array<string|int, mixed> $exclude = array() ]) : Uri
Parameters
$uri : string = 'index.php'

ค่าเริ่มต้นคือ index.php

$exclude : array<string|int, mixed> = array()

รายการแอเรย์ของ $_GET และ $_POST ที่ไม่ต้องการให้รวมอยู่ใน URL

Return values
Uri

createUriWithPost()

สร้างคลาสจากลิงค์ และ รวมค่าที่มาจาก $_POST ด้วย

public static createUriWithPost([string $uri = 'index.php' ][, array<string|int, mixed> $exclude = array() ]) : Uri
Parameters
$uri : string = 'index.php'

ค่าเริ่มต้นคือ index.php

$exclude : array<string|int, mixed> = array()

รายการแอเรย์ของ $_POST ที่ไม่ต้องการให้รวมอยู่ใน URL

Return values
Uri

filterRequestKey()

key ของ Input ต่างๆเป็น ตัวเลข ภาษาอังกฤษ และ [ ] _ - เท่านั้น

public static filterRequestKey(array<string|int, mixed> $source) : array<string|int, mixed>
Parameters
$source : array<string|int, mixed>
Return values
array<string|int, mixed>

get()

อ่านค่าจากตัวแปร GET คืนค่า InputItem หรือ Collection ของ InputItem

public get(string $name[, mixed $default = null ]) : InputItem|Inputs
Parameters
$name : string

ชื่อตัวแปร

$default : mixed = null

ค่าเริ่มต้นหากไม่พบตัวแปร

Return values
InputItem|Inputs

getAcceptableLanguages()

คืนค่ารายการภาษาที่รองรับ จาก HTTP header

public getAcceptableLanguages() : array<string|int, mixed>
Return values
array<string|int, mixed>

getAttribute()

อ่านค่า attributes ที่ต้องการ

public getAttribute(string $name[, mixed $default = null ]) : mixed
Parameters
$name : string

ชื่อของ attributes

$default : mixed = null

คืนค่า $default ถ้าไม่พบ

Return values
mixed

getAttributes()

คืนค่า attributes ทั้งหมด

public getAttributes() : array<string|int, mixed>
Return values
array<string|int, mixed>

getClientIp()

ฟังก์ชั่น อ่าน ip ของ client คืนค่า IP ที่อ่านได้

public getClientIp() : string|null
Return values
string|null

getCookieParams()

คืนค่าจากตัวแปร $_COOKIE

public getCookieParams() : array<string|int, mixed>
Return values
array<string|int, mixed>

getHeader()

อ่าน header ที่ต้องการ ผลลัพท์เป็น array คืนค่าแอเรย์ของ header ถ้าไม่พบคืนค่าแอเรย์ว่าง

public getHeader(string $name) : array<string|int, string>
Parameters
$name : string
Return values
array<string|int, string>

getHeaderLine()

อ่าน header ที่ต้องการ ผลลัพท์เป็น string คืนค่ารายการ header ทั้งหมดที่พบเชื่อมต่อด้วย ลูกน้ำ (,) หรือคืนค่าข้อความว่าง หากไม่พบ

public getHeaderLine(string $name) : string
Parameters
$name : string
Return values
string

getHeaders()

คืนค่า header ทั้งหมด ผลลัพท์เป็น array

public getHeaders() : array<string|int, mixed>
Return values
array<string|int, mixed>

getMethod()

อ่านค่า HTTP method returns the request method

public getMethod() : string
Return values
string

getParsedBody()

คืนค่าจากตัวแปร $_POST

public getParsedBody() : null|array<string|int, mixed>|object
Return values
null|array<string|int, mixed>|object

getProtocolVersion()

คืนค่าเวอร์ชั่นของโปรโตคอล เช่น 1.1, 1.0

public getProtocolVersion() : string
Return values
string

getQueryParams()

คืนค่าจากตัวแปร $_GET

public getQueryParams() : null|array<string|int, mixed>|object
Return values
null|array<string|int, mixed>|object

getRequestTarget()

อ่านค่า request target

public getRequestTarget() : string
Return values
string

getServerParams()

คืนค่าจากตัวแปร $_SERVER

public getServerParams() : array<string|int, mixed>
Return values
array<string|int, mixed>

getUploadedFiles()

คืนค่าไฟล์อัปโหลด FILES

public getUploadedFiles() : Files
Return values
Files

globals()

อ่านค่าจากตัวแปร GLOBALS เช่น $_POST $_GET $_SESSION $_COOKIE ตามที่ระบุใน $keys ตามลำดับ เช่น array('POST', 'GET') หมายถึงอ่านจาก $_POST ก่อน ถ้าไม่พบจะอ่านจาก $_GET และถ้าไม่พบอีกจะคืนค่า $default

public globals(array<string|int, mixed> $keys, string $name[, mixed $default = null ]) : InputItem|Inputs
Parameters
$keys : array<string|int, mixed>

ชื่อตัวแปรที่ต้องการอ่าน ตัวพิมพ์ใหญ่ เช่น array('POST', 'GET')

$name : string

ชื่อตัวแปร

$default : mixed = null

ค่าเริ่มต้นหากไม่พบตัวแปร

Return values
InputItem|Inputs

hasHeader()

ตรวจสอบว่ามี header หรือไม่ คืนค่า true ถ้ามี

public hasHeader(string $name) : bool
Parameters
$name : string
Return values
bool

initSession()

ฟังก์ชั่นเริ่มต้นใช้งาน session

public initSession() : bool
Return values
bool

isAjax()

ตรวจสอบว่าเรียกมาโดย Ajax หรือไม่ คืนค่า true ถ้าเรียกมาจาก Ajax (XMLHttpRequest)

public isAjax() : bool
Return values
bool

isReferer()

ฟังก์ชั่น ตรวจสอบ referer คืนค่า true ถ้า referer มาจากเว็บไซต์นี้

public isReferer() : bool
Return values
bool

isSafe()

ฟังก์ชั่น ตรวจสอบ token ที่มาจากฟอร์ม และ ตรวจสอบ Referer ด้วย รับค่าที่มาจาก $_POST เท่านั้น ฟังก์ชั่นนี้ต้องเรียกต่อจาก initSession() เสมอ อายุของ token กำหนดที่ TOKEN_LIMIT คืนค่า true ถ้า token ถูกต้องและไม่หมดอายุ

public isSafe() : bool
Return values
bool

map()

รวมแอเรย์ $_GET $_POST เป็นข้อมูลเดียวกัน

public static map(array<string|int, mixed> &$result, array<string|int, mixed> $array[, array<string|int, mixed> $exclude = array() ]) : mixed
Parameters
$result : array<string|int, mixed>

ตัวแปรเก็บผลลัพท์ สำหรับนำไปใช้งานต่อ

$array : array<string|int, mixed>

ตัวแปรที่ต้องการรวม เช่น $_GET $_POST

$exclude : array<string|int, mixed> = array()

รายการคีย์ของแอเรย์ ที่ไม่ต้องการให้รวมอยู่ในผลลัพท์

Return values
mixed

post()

อ่านค่าจากตัวแปร $_POST ถ้าไม่พบเลยคืนค่า $default คืนค่า InputItem หรือ แอเรย์ของ InputItem

public post(string $name[, mixed $default = null ]) : InputItem|Inputs
Parameters
$name : string

ชื่อตัวแปร

$default : mixed = null

ค่าเริ่มต้นหากไม่พบตัวแปร

Return values
InputItem|Inputs

removeToken()

ลบ token

public removeToken() : mixed
Return values
mixed

request()

อ่านค่าจากตัวแปร $_POST $_GET $_COOKIE(options) ตามลำดับ คืนค่ารายการแรกที่พบ ถ้าไม่พบเลยคืนค่า $default คืนค่า InputItem หรือ แอเรย์ของ InputItem

public request(string $name[, mixed $default = null ][, mixed $cookie = false ]) : InputItem|Inputs
Parameters
$name : string

ชื่อตัวแปร

$default : mixed = null

ค่าเริ่มต้นหากไม่พบตัวแปร

$cookie : mixed = false

false (default) ไม่อ่านจาก cookie, true อ่านจาก cookie ด้วย

Return values
InputItem|Inputs

server()

อ่านค่าจากตัวแปร $_SERVER ถ้าไม่พบเลยคืนค่า $default

public server(string $name[, mixed $default = null ]) : mixed
Parameters
$name : string

ชื่อตัวแปร

$default : mixed = null

ค่าเริ่มต้นหากไม่พบตัวแปร

Return values
mixed

session()

อ่านค่าจากตัวแปร $_SESSION ถ้าไม่พบเลยคืนค่า $default คืนค่า InputItem หรือ Collection ของ InputItem

public session(string $name[, mixed $default = null ]) : InputItem|Inputs
Parameters
$name : string

ชื่อตัวแปร

$default : mixed = null

ค่าเริ่มต้นหากไม่พบตัวแปร

Return values
InputItem|Inputs

setSession()

กำหนดค่าตัวแปร $_SESSION

public setSession(string $name, mixed $value) : static
Parameters
$name : string

ชื่อตัวแปร

$value : mixed

ค่าของตัวแปร

Return values
static

withAddedHeader()

เพิ่ม header ใหม่

public withAddedHeader(string $name, string|array<string|int, string> $value) : static
Parameters
$name : string

ชื่อของ Header

$value : string|array<string|int, string>

ค่าของ Header เป็น string หรือ แอเรย์ของ string

Tags
throws
InvalidArgumentException

ถ้าชื่อ header ไม่ถูกต้อง

Return values
static

withAttribute()

กำหนดค่า attributes

public withAttribute(string $name, mixed $value) : static
Parameters
$name : string

ชื่อของ attributes

$value : mixed

ค่าของ attribute

Return values
static

withBody()

กำหนด stream

public withBody(streamInterface $body) : static
Parameters
$body : streamInterface
Return values
static

withCookieParams()

กำหนดค่า cookieParams

public withCookieParams(array<string|int, mixed> $cookies) : static
Parameters
$cookies : array<string|int, mixed>
Return values
static

withHeader()

กำหนด header แทนที่รายการเดิม

public withHeader(string $name, string|array<string|int, string> $value) : static
Parameters
$name : string

ชื่อของ Header

$value : string|array<string|int, string>

ค่าของ Header เป็น string หรือ แอเรย์ของ string

Tags
throws
InvalidArgumentException

for invalid header names or values

Return values
static

withHeaders()

กำหนด header พร้อมกันหลายรายการ แทนที่รายการเดิม

public withHeaders(array<string|int, mixed> $headers) : static
Parameters
$headers : array<string|int, mixed>

array($key => $value, $key => $value...)

Tags
throws
InvalidArgumentException

for invalid header names or values

Return values
static

withMethod()

กำหนดค่า HTTP method

public withMethod(string $method) : static
Parameters
$method : string
Return values
static

withoutAttribute()

ลบ attributes

public withoutAttribute(string|array<string|int, mixed> $names) : static
Parameters
$names : string|array<string|int, mixed>

ชื่อของ attributes ที่ต้องการลบ

Return values
static

withoutHeader()

ลบ header

public withoutHeader(string $name) : static
Parameters
$name : string

ชื่อ header ที่ต้องการลบ

Return values
static

withParsedBody()

กำหนดค่า parsedBody

public withParsedBody(mixed $data) : static
Parameters
$data : mixed
Return values
static

withProtocolVersion()

กำหนดเวอร์ชั่นของโปรโตคอล

public withProtocolVersion(string $version) : static
Parameters
$version : string

เช่น 1.1, 1.0

Return values
static

withQueryParams()

กำหนดค่า queryParams

public withQueryParams(array<string|int, mixed> $query) : static
Parameters
$query : array<string|int, mixed>
Return values
static

withRequestTarget()

กำหนดค่า request target

public withRequestTarget(mixed $requestTarget) : static
Parameters
$requestTarget : mixed
Return values
static

withUploadedFiles()

กำหนดค่า uploadedFiles

public withUploadedFiles(array<string|int, mixed> $uploadedFiles) : static
Parameters
$uploadedFiles : array<string|int, mixed>
Return values
static

withUri()

กำหนดค่า Uri

public withUri(UriInterface $uri[, bool $preserveHost = false ]) : static
Parameters
$uri : UriInterface
$preserveHost : bool = false
Return values
static

filterHeader()

ตรวจสอบความถูกต้องของ header

protected filterHeader(string $name) : mixed
Parameters
$name : string
Tags
throws
InvalidArgumentException

ถ้า header ไม่ถูกต้อง

Return values
mixed

getRequestHeaders()

ฟังก์ชั่นคืนค่า HTTP Header

protected getRequestHeaders() : array<string|int, mixed>
Return values
array<string|int, mixed>

createInputItem()

อ่านค่าจาก $source คืนค่า InputItem หรือ Collection ของ InputItem

private createInputItem(array<string|int, mixed> $source, string $name, mixed $default, string|null $type) : InputItem|Inputs
Parameters
$source : array<string|int, mixed>

ตัวแปร GET POST

$name : string

ชื่อตัวแปร

$default : mixed

ค่าเริ่มต้นหากไม่พบตัวแปร

$type : string|null

ประเภท Input เช่น GET POST SESSION COOKIE หรือ null ถ้าไม่ได้มาจากรายการข้างต้น

Return values
InputItem|Inputs

Search results