我有4个文件。我正在尝试通过函数将我的获取结果传递给另一个页面。我的代码如下:
档案actions.php
public function getAction($action, $page, Array $vars){
if(!empty($action)){
$action = strtolower($action);
$path = $page.'/'.$action.'.php';
$currentTemplate = $this->loadActionTemplate($path);
return Array($currentTemplate, $vars);
}
else{
$action = strtolower($action);
$path = $page.'/default.php';
$currentTemplate = $this->loadActionTemplate($path);
return ($currentTemplate);
}
}
文件news.php(控制器)
$file = VIEWS_PATH.strtolower($this->template) . '.php';
if (file_exists($file)){
$currentQuery = $newsModel->viewQuery($selectQuery,$returnAll);
include_once($file);
}
}
File news.php(主视图)
$factory = new Actions_Factory();
$factory->getAction($action, $page, $currentQuery);
文件view.php(子视图)
print_r($currentQuery);
我无法获取$ currentQuery来打印view.php上的mysql转储,但是$ currentQuery在news.php上打印出来。我做错了什么,不知道它是什么。
非常感谢任何帮助。
先谢谢
答案 0 :(得分:0)
$factory->getAction($action, $page, $currentQuery);
print_r($currentQuery);
您将$currentQuery
设置为getAction()
,但如果您希望函数影响参数,则必须使用参考分配,此函数返回结果!
在"&"
中插入$var
以通过引用分配变量
public function getAction($action, $page, Array **&$vars**){