php - phalcon中为什么用tools生成的单模块项目是volt引擎,但是多模块用的是.phtml呢?
本文介绍了php - phalcon中为什么用tools生成的单模块项目是volt引擎,但是多模块用的是.phtml呢?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
在phalcon中,用tools生成的单模块项目,默认是.volt
但是生成的多模块是.phtml
如何也让多模块也用.volt引擎呢?
ps:光改文件后缀不好使
解决方案
如果是这种项目结构
只需要将services.php中的
$di->setShared('view', function () use ($config) {
$view = new View();
$view->setViewsDir($config->application->viewsDir);
$view->registerEngines(array(
'.volt' => function ($view, $di) use ($config) {
$volt = new VoltEngine($view, $di);
$volt->setOptions(array(
'compiledPath' => $config->application->cacheDir,
'compiledSeparator' => '_'
));
return $volt;
},
//'.phtml' => 'Phalcon\Mvc\View\Engine\Php'
// '.volt' => 'Phalcon\Mvc\View\Engine\Volt'
));
return $view;
});
剪切放在每个模块中的Modules.php中,替换
$di['view'] = function () {
$view = new View();
$view->setViewsDir(__DIR__ . '/views/');
return $view;
}
就ok了,,但是注意在Modules.php中要引入命名空间
use Phalcon\Mvc\View\Engine\Volt as VoltEngine;
不过在3.0之后用开发工具生成的目录不是这种结构了。
这篇关于php - phalcon中为什么用tools生成的单模块项目是volt引擎,但是多模块用的是.phtml呢?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文