在你的Cake controller里,你可以通过$this->params来访问controller的参数。这个变量用来获取传递到controller的数据,以及提供对当前请求信息的访问。$this->params最常见的用法是用于访问客户端通过POST或者GET操作递交给controller的信息。
$this->data
用来处理来自HTML helper的POST表单数据。
// A HTML Helper is used to create a form element
$html->input('User/first_name');
// When rendered in the HTML would look something like:
<input name="data[User][first_name]" value="" type="text" />
// And when submitted to the controller via POST,
// shows up in $this->data['User']['first_name']
Array
(
[data] => Array
(
[User] => Array
(
[username] => mrrogers
[password] => myn3ighb0r
[first_name] => Mister
[last_name] => Rogers
)
)
)
$this->params[‘form’]
来自任何表单的POST数据都储存在这里,包括$_FILES里的信息。
$this->params[‘bare’]
如果当前布局是bare返回’1’,否则返回’0’。
$this->params[‘ajax’]
如果当前布局是ajax返回’1’,否则返回’0’。
$this->params[‘controller’]
返回处理该请求的当前controller的名字。例如,如果URL /posts/view/1被调用,$this->params[‘controller’]的值应该是’posts’。
$this->params[‘action’]
返回处理该请求的当前action的名字。例如,如果URL /posts/view/1被调用,$this->params[‘action’]的值应该是view。
$this->params[‘pass’]
返回当前请求传入的GET查询字符串。例如,如果URL URL /posts/view/?var1=3&var2=4被调用,$this->params[‘pass’]应该等于"?var1=3&var2=4"。
$this->params[‘url’]
返回当前被请求的URL,连同get参数的键值对一起。例如如果/posts/view/?var1=3&var2=4被调用,$this->params[‘url’]应该是以下内容:
url] => Array
(
[url] => posts/view
[var1] => 3
[var2] => 4
)