本文整理匯總了PHP中rest::request_method方法的典型用法代碼示例。如果您正苦於以下問題:PHP rest::request_method方法的具體用法?PHP rest::request_method怎麽用?PHP rest::request_method使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類rest
的用法示例。
在下文中一共展示了rest::request_method方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: __call
/**
* Handle dispatching for all REST controllers.
*/
public function __call($function, $args)
{
// If no parameter was provided after the controller name (eg "/albums") then $function will
// be set to "index". Otherwise, $function is the first parameter, and $args are all
// subsequent parameters.
$request_method = rest::request_method();
if ($function == "index" && $request_method == "get") {
return $this->_index();
}
$resource = ORM::factory($this->resource_type, $function);
if (!$resource->loaded && $request_method != "post") {
return Kohana::show_404();
}
if ($request_method != "get") {
access::verify_csrf();
}
switch ($request_method) {
case "get":
return $this->_show($resource);
case "put":
return $this->_update($resource);
case "delete":
return $this->_delete($resource);
case "post":
return $this->_create($resource);
}
}
示例2: request_method_test
public function request_method_test()
{
foreach (array("GET", "POST") as $method) {
foreach (array("", "PUT", "DELETE") as $tunnel) {
if ($method == "GET") {
$expected = "GET";
} else {
$expected = $tunnel == "" ? $method : $tunnel;
}
$_SERVER["REQUEST_METHOD"] = $method;
$_POST["_method"] = $tunnel;
$this->assert_equal(strtolower(rest::request_method()), strtolower($expected), "Request method: {$method}, tunneled: {$tunnel}");
}
}
}