控制器中view和fetch的区别
程序员文章站
2021-12-28 21:43:09
...
控制器中,模板三种渲染方法,配置显示不一样。
//不继承controller
$view = new view();
return $view->fetch('index/demo');
//不继承controller
return view('index/demo');
//继承controller
return $this->fetch('index/demo');
后两种能输出公共配置的,tpl_replace_string,比如__CSS__,模板里能输出路径,第一种,模板里直接输出__CSS__字符串
项目中,尽量用 后两种写法,或者继承controller,this->fetch或者用view方法
new view();这种不能读公共配置文件,需要自己设置参数,实例化对象之后,传参进去,比如这么写
$tempate=[
//模板引擎类型,支持php think 支持扩展
'type'=>'Think',
//模板路径
'view_path'=>'',
//模板后缀
'view_suffix'=>'.html',
//替换参数
'tpl_replace_string'=>[
'__IMG__'=>'/public/index/images',
'__CSS__'=>'/public/index/css',
'__JS__'=>'/public/index/js',
]
];
$view = new View($tempate);
$view->assign('css','__CSS__');
$view->assign('js','__JS__');
$view->assign('img','__IMG__');
推荐阅读
-
halcon中相似变换、仿射变换、投影变换的区别以及应用方式和例程
-
php中null和empty的区别是什么
-
python类中super()和__init__()的区别
-
详解js中Number()、parseInt()和parseFloat()的区别
-
JavaScript中各种编码解码函数的区别和注意事项_javascript技巧
-
php中理解print EOT分界符和echo EOT的用法区别小结_PHP教程
-
关于MySql 和SqlServer 中left join , full join的一点区别
-
Oracle中Date和Timestamp的区别
-
php 中strlen和mb_strlen的区别你知道吗?
-
浅谈Python中range和xrange的区别