php – 使用CodeIgniter加载视图文件夹外部的视图
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了php – 使用CodeIgniter加载视图文件夹外部的视图,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1353字,纯文字阅读大概需要2分钟。
内容图文
![php – 使用CodeIgniter加载视图文件夹外部的视图](/upload/InfoBanner/zyjiaocheng/709/75e7bb7673aa495daa80e5d7d89e10b6.jpg)
我需要从以下范围之外加载视图:
$this->load->view();
它似乎适用于base / application / views目录.如何从/ application /目录外部访问视图?
我假设我将不得不扩展CI_Loader类这将是最好的前进方式吗?
我还找到了包含view_paths的数组:
// base/system/core/Loader.php
// CI_Loader
/**
* List of paths to load views from
*
* @var array
* @access protected
*/
protected $_ci_view_paths = array();
但是所有声明的变量上面的注释让我陷入困境
// All these are set automatically. Don't mess with them.
关于从哪里去的任何想法将不胜感激:-)
解决方法:
不知道这是否是正确的方法,但它的工作原理:)
在您的应用程序/核心文件夹中放置此加载器扩展
<?php
class MY_Loader extends CI_Loader {
function ext_view($folder, $view, $vars = array(), $return = FALSE) {
$this->_ci_view_paths = array_merge($this->_ci_view_paths, array(APPPATH . $folder . '/' => TRUE));
return $this->_ci_load(array(
'_ci_view' => $view,
'_ci_vars' => $this->_ci_object_to_array($vars),
'_ci_return' => $return
));
}
}
?>
然后你想要一个外部视图文件,假设它在third_party文件夹中
应用/ THIRD_PARTY / my_new_view.php
Hello : <?php echo $my_name; ?>
然后在控制器中调用新视图
ext_view是你的新视图加载器方法,
> 1st param:你应用的文件夹
>第2个参数:视图名称
>第3个参数:变量数据等等……
test_controller.php
$view_data = array('my_name' => 'dino');
$this->load->ext_view('third_party', 'my_new_view', $view_data);
如果一切都很好.它会输出
你好:迪诺
内容总结
以上是互联网集市为您收集整理的php – 使用CodeIgniter加载视图文件夹外部的视图全部内容,希望文章能够帮你解决php – 使用CodeIgniter加载视图文件夹外部的视图所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。