ThinkPHP判断当前操作的请求类型

在很多情况下面,我们需要判断当前操作的请求类型是GET POST 甚至是PUT DELETE,一方面可以针对作出不同的逻辑处理,另外一方面有些情况下面需要验证安全性,过滤不安全的请求。

TP的Action类内置了一些判断方法用于判断请求类型,包括:
isGet 是否是GET提交
isPost 是否是POST提交
isPut 是否是PUT提交
isDelete 是否是DELETE提交
isHead 是否是HEAD提交

使用举例如下:

class UserAction extends Action{
  public function update(){
    if ($this->isPost()){
      $User = M(‘User’);
      $User->create();
      $User->save();
      $this->success(‘保存完成’);
    } else {
      $this->error(‘非法请求’);
    }
  }
}

另外还提供了一个判断当前是否属于AJAX提交的方法

isAjax 是否属于AJAX提交

需要注意的是,如果使用的是ThinkAjax或者自己写的Ajax类库的话,需要在表单里面添加一个隐藏域,告诉后台属于ajax方式提交,默认的隐藏域名称是ajax(可以通过VAR_AJAX_SUBMIT配置),如果是JQUERY类库的话,则无需添加任何隐藏域即可自动判断。

affiliate_link
Share this Post:
Digg Google Bookmarks reddit Mixx StumbleUpon Technorati Yahoo! Buzz DesignFloat Delicious BlinkList Furl

Comments are closed.