php – Zend Framework中的HMVC
作者:互联网
是否可以在Zend Framework中使用HMVC模式?它默认在Kohana 3中实现,我真的很喜欢它,所以现在我想在Zend Framework中使用它.
编辑
我想让它成为可能:
1)在其他请求中包含完整的请求(如控制器/操作)
2)如上所述直接调用控制器/动作
它不仅用于小部件,而且我还想构建一个包含其他页面内容的页面…
编辑2
更清楚一点:
我有一个包含几个元素的页面对象.这些元素可以是简单元素(文本,图像等)和特殊元素,它们是控制器:动作调用.每个页面都可以包含“无限制”(特殊)元素.我只想循环遍历这些元素,定义我正在处理的元素类型,并将该元素的结果添加到我的视图内容中.
喜欢:
foreach($Page->Elements AS $Element) {
switch(get_class($Element)) {
case "Base\TextElement":
// Add text element to content
...
break;
case "Base\SpecialElement":
// Get result of the controller:action call
break;
case "Base\ImageElement":
// Add image element to content
...
break;
default:
echo "No case defined for ".get_class($Element);
die;
}
}
解决方法:
这完全取决于你想做什么.
动作堆栈或操作视图帮助程序可能会为您完成工作,但这可能不是最佳解决方案,因为调度开销(可能会在ZF2中删除).
第二种方法是查看帮助程序,直接调用控制器中的模型和操作.您可以使用操作助手(以及对它们的静态调用)来访问控制器逻辑.
此外,请参阅此博客文章:
Using Action Helpers To Implement Re-Usable Widgets – phly, boy, phly
标签:php,zend-framework,hmvc 来源: https://codeday.me/bug/20190630/1341393.html