http
دریافت اطلاعات کاربر
آی پی
http::$client["ip"];
درگاه (port)
http::$client["port"];
userAgent
http::$client["agent"];
دریافت اطلاعات سرور
آی پی
آی پی سرور را برمیگرداند :
http::$server["ip"];
درگاه (port)
درگاه استفاده شده برای دریافت درخواست را بر میگرداند
http::$server["port"];
نوع وب سرور
نام وب سرور بر روی سرور که درخواست را دریافت کرده، نشان می دهد :
http::$server["webserver"];
نام دامنه
نام دامنه اصلی هاست که در وب سرور تنظیم شده است را نشان می دهد :
http::$server["hostname"];
دریافت اطلاعات درخواست
نوع ارسال
نوع POST
و یا GET
درخواست را نمایش میدهد :
http::$request["method"];
مسیر درخواست
آدرس مسیر صفحه ای که توسط مرورگر و کاربر درخواست داده شده است را نشان می دهد :
http::$request["uri"];
زمان دریافت درخواست
زمانی که درخواست دریافت شده را نشان میدهد :
http::$request["time"];
و یا میتوانید :
http::$request["microtime"];
خروجی زمان به صورت timestamp است .
نام دامنه
برای مثال اگر دامنه ی domain.com توسط یک درخواست برای سرور فرستاده شده باشد، مقدار زیر domain.com خواهد بود .
http::$request["hostname"];
نوع اتصال
نوع اتصال htttp
و یا https
را نشان میدهد :
http::$request["scheme"];
آدرس ارجاع دهنده
در صورتی که آدرس ارجاع دهنده موجود باشد، میتوانید آن را به صورت زیر دریافت کنید :
http::$request["referer"];
بررسی نوع درخواست برای درخواست های ajax
در صورتی که درخواست از طریق ajax صورت گرفته باشد، مقدار زیر برابر true
و در غیر اینصورت false
خواهد بود .
http::$request["ajax"];
پارامتر های POST
برای دریافت پارامتر های ارسال شده از طریق فرم ، میتوانید به این صورت عمل کنید :
http::$request["post"];
توجه داشته باشید مقدار های دریافتی اعتبار سنجی نشده اند .
برای اطلاعات بیشتر به صفحه ی اعتبار سنجی مراجعه کنید
دریافت پارامتر های GET
برای دریافت پارامتر های ارسال شده از طریق آدرس(URL) ، میتوانید به این صورت عمل کنید :
http::$request["get"];
مثال
http://domain.com/?lang=en
<?php
namespace packages\packagename\controllers;
use packages\base\{controller, response, http, view}
use \pacakges\packagename\views;
class Main extends controller {
public function homepage(): response {
$response = new respose(true);
$view = view::byName(views\homepage::class);
$lang = $this->getLang();
$view->setLang($lang);
$response->setView($view);
return $response;
}
public function getLang() {
return isset(http::$request["get"]["lang"]) ? http::$request["get"]["lang"] : "en";
}
}
توجه داشته باشید مقدار های دریافتی اعتبار سنجی نشده اند .
برای اطلاعات بیشتر به صفحه ی اعتبار سنجی مراجعه کنید
دریافت آدرس URL
با استفاده از متد getURL
کلاس http
میتوانید آدرس کاملی که کاربر درخواست داده است را دریافت کنید .
http::getURL();
دریافت پارامتر ها
با استفاده از متد getData
کلاس http
میتوانید مقدار پارامتری که یا توسط آدرس و یا به صورت فرم ارسال شده است را دریافت کنید .
این متد ابتدا در میان پارامتر های ارسالی آدرس GET
جستجو میکند ، در صورتی که مقداری با کلید مشخص شده پیدا نکند، به سراغ پارامتر های دریافتی از طریق فرم POST
میرود . اولین مقدار با کلید دریافت شده را در صورت یافتن و در غیر اینصورت null
برمی گرداند.
توجه داشته باشید ، این متد پارامتر های ارسالی را اعتبار سنجی نخواهد کرد و مقادیر را عینا باز می گرداند .
برای اطلاعات بیشتر به صفحه ی اعتبار سنجی مراجعه کنید
http::getData(key);
مثال
<?php
namespace packages\packagename\controllers;
use packages\base\{controller, response, http, view}
use \pacakges\packagename\{views, state};
class Main extends controller {
public function getCities(): response {
$response = new response(true);
$city = new state\city();
$city->where("state", http::getData("state"));
$city->orderBy("title_fa", "ASC");
$response->setData($city->get(), "cities");
return $response;
}
}
دریافت پارامتر های ارسالی از طریق فرم POST
برای اطلاعات بیشتر به صفحه ی اعتبار سنجی مراجعه کنید
در صورتی که بخواهید فقط و فقط مقدار کلیدی را در بین پارامتر های ارسالی از طریق فرم دریافت کنید، میتوانید از متد getFormData
کلاس http
استفاده کنید . این متد اولین مقدار پیدا شده با کلید مشخص شده و در غیر اینصورت null
بر میگرداند .
http::getFormData(key);