开发者

How do I pass information my a controller to a view in PHP (no framework)?

开发者 https://www.devze.com 2023-01-18 06:52 出处:网络
Using PHP, If I have a model (a class) where I various queries, whatever I need, and in my controller, I use myModel = new CustomerModel(); and later in the controller, say I call myMyodel in the cont

Using PHP, If I have a model (a class) where I various queries, whatever I need, and in my controller, I use myModel = new CustomerModel(); and later in the controller, say I call myMyodel in the controller (I know looks like codeigniter but I am not usin开发者_运维技巧g a framework) to:

$data['query'] = myModel.OrderByLastName();

how do I pass that $data['query'] to a view, a separate .php page?

I don't wan to echo anything from my controller.

Also, was hoping this design, the way I explained it makes sense. Or am I wasting time with the model class?


Typically, you'd instantiate a view object:

$view = new View();

Pass it the info it needs():

$view->set($name1, $value1);
$view->set($name2, $value2);
...

Then invoke the view's renderer:

$view->render();


The way Django works is the controller basically renders a template using a templating system. It passes the data in Contexts, like this:

data['query'] = myModel.OrderByLastName();

context = {'data': data['query']}

page = loader.get_template('folder/template.phtml')

return render_to_page(page, context)

roughly.

Obviously, you're writing your own system so you've got some room on exactly how you implement it. I don't know if that's exactly what you want, but it might give you a workable idea.

0

精彩评论

暂无评论...
验证码 换一张
取 消