cakePHP:通过视图文件访问$ this-> request->数据(控制器传递的信息)

时间:2014-07-20 14:05:42

标签: cakephp view controller

如何访问视图中控制器传入的$this->request->data?例如控制器内$this->set('sample')定义的变量可以通过$sample内部视图和.ctp文件访问。如何通过视图文件访问存储在$this->request->data内的值?

1 个答案:

答案 0 :(得分:9)

CakePHP book表示$this->request在控制器,视图和助手中可用。因此,您可以在视图中使用$this->request->data访问它。如果你想给它一个较短的名字,你可以将它设置为你的控制器中的东西:

$this->set('requestData', $this->request->data);

如果tyour视图只需要几个变量,则可以更清楚地解压缩控制器中的请求数据并直接传递它们。这也会更好separation of concerns;如果您稍后重构您的应用程序,只要您传入这些参数,您也不必更新视图:

$this->set('name', $this->request->data('name'));
$this->set('age', $this->request->data('age'));

(请注意,我使用CakePHP data() method访问这些属性;您不必将其视为数组)。