将数组传递给CakePHP中的requestAction

时间:2012-07-31 17:23:56

标签: php cakephp cakephp-2.0

我有功能

public myfunction($myArray) {
}

我需要通过array("cat", "dog")行动。

$output = $this->requestAction(
    array('controller' => 'app', 'action' => 'myfunction'),
    array("cat","dog")
);

但这仅将cat传递给我的控制器操作,dog未通过。

我试过了:

$output = $this->requestAction(
    array('controller' => 'app', 'action' => 'myfunction'),
    array("myArray" => array("cat","dog"))
);

但它没有帮助。我查了cookbook但找不到相关的例子。 我怎样才能解决这个问题?谢谢

3 个答案:

答案 0 :(得分:7)

试试此代码

$this->requestAction(
    array('controller' => 'app', 'action' => 'myfunction'),
        array('pass' => array('dog','cat'))
            );

在Myfunction中:

public myfunction() {
    pr($this->params->params['pass']);
}

告诉我,如果不工作......

答案 1 :(得分:2)

见你的网址

http://book.cakephp.org/1.3/view/991/requestAction

how to pass argument in cakephp requestAction?

试试这个

$option = array("cat_dog"); 

$this->requestAction(array('controller' => 'app', 'action' => 'myfunction'), $option); 

然后获取$ option数组并将其爆炸。

$myArray = explode('_', your get variable); 

pr($myArray);

答案 2 :(得分:0)

尝试:

$output = $this->requestAction(
array('controller' => 'app', 'action' => 'myfunction'),
array("animals" => array("cat"=>"cat","dog"=>"dog"))
);