Codeigniter-将视图缓存到视图中
Posted
技术标签:
【中文标题】Codeigniter-将视图缓存到视图中【英文标题】:Codeigniter- cache view into a view 【发布时间】:2013-08-12 16:39:31 【问题描述】:我想知道是否可以缓存加载到另一个视图中的视图。
我愿意:
view.php:
<div>
<?php echo $this->load->view('modules/new_view'); ?>
</div>
所以 view.php 需要一个新的视图,我可以缓存views/modules/new_view.php
的内容吗?
【问题讨论】:
CodeIgniter 输出缓存,缓存整个页面。它以每页为基础。如果您想单独缓存页面上的部分,请查看Caching Driver 并尝试一下。您应该在控制器中执行逻辑,将视图作为字符串返回,缓存字符串,将缓存的数据推送到主视图。 【参考方案1】:Codeigniter 有 Web Page Caching
CodeIgniter 让你缓存你的页面以达到最大 性能。
虽然CodeIgniter的速度相当快,但是动态信息量很大 您在页面中显示的内容将直接与服务器相关联 使用的资源、内存和处理周期,这会影响您的 页面加载速度。通过缓存您的页面,因为它们保存在它们的 完全渲染状态,您可以获得接近的性能 静态网页。
为此,您可以使用下面的代码,其中n
是您希望页面在刷新之间保持缓存的分钟数。您可以将其放置在函数中的任何位置。
$this->output->cache(n);
更新
要仅缓存页面的一部分或单个视图,您可以使用CodeIgniter-Cache。
CodeIgniter-Cache 是 CodeIgniter 的部分缓存库。它 允许您在文件系统中写入和获取数据块。 通过将复杂或大块的数据以序列化的形式存储在 文件系统,您可以减轻数据库的压力或简单地缓存 Twitter 电话。
另一种选择
MP Cache: 部分代码的简单灵活缓存
【讨论】:
如果我将输出缓存放到父视图内的视图中,缓存也会影响父视图以上是关于Codeigniter-将视图缓存到视图中的主要内容,如果未能解决你的问题,请参考以下文章
Codeigniter:从视图中调用视图时的变量范围。奇怪的