Request
คลาสสำหรับจัดการคำร้องขอที่ส่งมาจาก Browser เช่น $_POST $_GET
\Somtum\Request
คลาสนี้ทำหน้าที่ในการรับค่าตัวแปรที่ส่งมาจาก Server
- initSession() ฟังก์ชั่นสำหรับเริ่มต้นการใช้งาน session และ coolie
- isAjax() ฟังก์ชั่นตรวจสอบว่าเป็นการเรียกมาจาก Ajax หรือไม่ ถ้าใช่คืนค่า true
- isReferer() ฟังก์ชั่นสำหรับตรวจสอบว่าเป็นการเรียกมาจากไซต์ของตัวเองหรือไม่ เช่นการตรวจสอบการรับค่า Submit จากฟอร์ม ว่ามีการโพสต์มาจากเว็บไซต์ตัวเองหรือเปล่า คืนค่า true ถ้าเป็นการโพสต์มาจากเว็บไซต์ตัวเอง
- get($key, $default) คืนค่าที่อ่านได้จากตัวแปร $_GET[$key] ถ้าไม่ได้ส่งค่ามาจะคืนค่าจาก $default หรือหากไม่ได้กำหนด $default ไว้จะคืนค่า null
- post($key, $default) คืนค่าที่อ่านได้จากตัวแปร $_POST[$key] ถ้าไม่ได้ส่งค่ามาจะคืนค่าจาก $default หรือหากไม่ได้กำหนด $default ไว้จะคืนค่า null
- request($key, $default) คืนค่าที่อ่านได้จากตัวแปร $_POST[$key] และ $_GET[$key] ตามลำดับ แล้วแต่ว่าจะพบตัวแปรใดก่อน หากไม่พบทั้งสองตัวจะคืนค่าจาก $default หรือหากไม่ได้กำหนด $default ไว้จะคืนค่า null
- server($name, $default) คืนค่าที่อ่านได้จากตัวแปร $_SERVER[$name] ถ้าไม่ได้ส่งค่ามาจะคืนค่าจาก $default หรือหากไม่ได้กำหนด $default ไว้จะคืนค่า null
- getParsedBody() คืนค่าจาก $_POST
- getQueryParams() คืนค่าจาก $_GET
- withParsedBody($data) กำหนดค่า $_POST คืนค่าเป็น Object ใหม่
- withQueryParams($query) กำหนดค่า $_GET คืนค่าเป็น Object ใหม่
คลาสนี้จะถูกส่งเป็นพารามิเตอร์ให้กับคลาสที่ถูกเรียกตรงๆจาก URL เช่น defaultController สามารถอ่านค่าพารามิเตอร์ที่ส่งมาได้ และยังมีตัวแปร self::$request สำหรับเก็บ Request ที่ส่งมาจาก Server ตั้งแต่ตอนเริ่มต้นด้วย (Request ที่ self::$request จะสามารถเรียกใช้ได้เฉพาะคลาสที่สืบทอดมาจาก \Somtum\Base เท่านั้น และค่าจากตัวแปรนี้ อาจจะไม่เหมือนที่รับมาจากพารามิเตอร์ เนื่องจากกรณีหลังมันผ่าน Router มาแล้ว)