将Codeigniter视图中的变量传递给函数

问题描述 投票:0回答:2

我有一个控制器,设置这样的几个变量......

$data["pageTitle"] = "My Profile";
$data["userData"] = $this->user_model->getUserData($user_id);
$data["userTool"] = $this->api->getUserTool($user_id);

在视图中,我知道我可以将每个作为单独的变量访问...

$pageTitle
$userData
$userTool

每个变量中的数据都传递给视图中的函数进行处理。

showUserData($pageTitle, $userData, $userTool);

我想要做的是将$ this传递给函数并从中解析数据,而不是在函数调用中有一串参数。这可行吗?

php codeigniter
2个回答
1
投票

在你的控制器中

$data['mycustomdata']["pageTitle"] = "My Profile";
$data['mycustomdata']["userData"] = $this->user_model->getUserData($user_id);
$data['mycustomdata']["userTool"] = $this->api->getUserTool($user_id);

在你看来

showUserData($mycustomdata);

0
投票

我想知道showUserData在视图中需要做什么(同意@S.Imp的评论)。

作为一项挑战,我们可以像这样实现您的要求,

控制器,

$this->pageTitle = "My Profile";
$this->userdata = array('test inpunt','test input2');
$this->userTool = array('test user tool','test user tool2');
$this->load->view('test_view');

视图,

function showUserData($obj) {

    echo "<br />".$obj->pageTitle;
    echo "<pre>";print_r($obj->userdata); echo "</pre>";
    echo "<pre>";print_r($obj->userTool); echo "</pre>";

}

showUserData($this);
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.