Php 如何在zend 2中像laravel一样返回视图
我需要做一个zend 2网络应用程序,但没有任何知识 在我看过的所有教程中,它们都在module.config.php中设置视图的文件名,在laravel中,您需要设置的只是视图的路由,您可以在控制器中设置给该路由的文件名 那么如何将此laravel代码转换为zend 2代码: $fileDirectory=isMobile()?“viewfiledirectory/viewfile_mobile”: “viewfiledirectory/viewfile” 返回视图::make($fileDirectory) 或者,如果没有zend 2的等价物,至少我该怎么做,每个文件都是在模板映射中硬编码的,我该如何使控制器指向该路由Php 如何在zend 2中像laravel一样返回视图,php,zend-framework2,zend-framework-mvc,zend-framework-routing,Php,Zend Framework2,Zend Framework Mvc,Zend Framework Routing,我需要做一个zend 2网络应用程序,但没有任何知识 在我看过的所有教程中,它们都在module.config.php中设置视图的文件名,在laravel中,您需要设置的只是视图的路由,您可以在控制器中设置给该路由的文件名 那么如何将此laravel代码转换为zend 2代码: $fileDirectory=isMobile()?“viewfiledirectory/viewfile_mobile”: “viewfiledirectory/viewfile” 返回视图::make($fileDi
这是一个很大的网站,每条路线至少有8页(根据语言设置和用户设备,只使用一页),我不能只列出module.config.php模板映射中的所有文件,我希望它像我在laravel中做的那样。在Zend Framework 2中,您将视图实现为模板文件,哪个是文件 具有
.phtml
扩展(“phtml”代表PHP+HTML)。视图模板具有这样的特性
名称,因为它们通常包含混合使用的PHP代码片段的HTML代码
用于呈现网页。视图通常位于视图子目录内
这是模块的一部分
在控制器中,使用ViewModel
类将变量传递给视图模板。视图模型还可用于设置视图样板名称(请参见下面的示例):
太棒了!这是假设“index/viewfile”在视图文件夹中,对吗?作为旁注,在处理移动网站时,可能会假设我们也有完整的移动布局。phtml
。这种方法在那里不会有太大帮助。有关如何更改引导上的布局以及如何将其与您的mobileChecker一起使用的信息,请参阅
<?php
// IndexController.php
namespace Application\Controller;
use Zend\Mvc\Controller\AbstractActionController;
use Zend\View\Model\ViewModel;
class IndexController extends AbstractActionController {
// The "index" action
public function indexAction() {
// Pass two variables to view template
$viewModel = new ViewModel(array('var1'=>$var1, 'var2'=>$var2));
// Set view template name
$templateName= $this->isMobile() ? "index/viewfile_mobile" : "index/viewfile";
$viewModel->setTemplate($templateName);
// Return the view model
return $viewModel;
}
}