Вход Регистрация
Файл: CodeIgniter-3.0.3/user_guide/database/caching.html
Строк: 1892
<?php
<!DOCTYPE html>
<!--[if 
IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if 
gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<
head>
  <
meta charset="utf-8">
  <
meta name="viewport" content="width=device-width, initial-scale=1.0">
  
  <
title>Database Caching Class &mdashCodeIgniter 3.0.3 documentation</title>
  

  
  
    <
link rel="shortcut icon" href="../_static/ci-icon.ico"/>
  

  
  <
link href='https://fonts.googleapis.com/css?family=Lato:400,700,400italic,700italic|Roboto+Slab:400,700|Inconsolata:400,700&subset=latin,cyrillic' rel='stylesheet' type='text/css'>

  
  
    

  

  
  
    <
link rel="stylesheet" href="../_static/css/citheme.css" type="text/css" />
  

  
    <
link rel="top" title="CodeIgniter 3.0.3 documentation" href="../index.html"/>
        <
link rel="up" title="Database Reference" href="index.html"/>
        <
link rel="next" title="Database Forge Class" href="forge.html"/>
        <
link rel="prev" title="Custom Function Calls" href="call_function.html"/> 

  
  <
script src="https://cdnjs.cloudflare.com/ajax/libs/modernizr/2.6.2/modernizr.min.js"></script>

</
head>

<
body class="wy-body-for-nav" role="document">

  <
div id="nav">
  <
div id="nav_inner">
    
    
    
      <
div id="pulldown-menu" class="ciNav">
        <
ul>
<
li class="toctree-l1"><class="reference internal" href="../general/welcome.html">Welcome to CodeIgniter</a><ul class="simple">
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../installation/index.html">Installation Instructions</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../installation/downloads.html">Downloading CodeIgniter</a></li>
<
li class="toctree-l2"><class="reference internal" href="../installation/index.html">Installation Instructions</a></li>
<
li class="toctree-l2"><class="reference internal" href="../installation/upgrading.html">Upgrading From a Previous Version</a></li>
<
li class="toctree-l2"><class="reference internal" href="../installation/troubleshooting.html">Troubleshooting</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../overview/index.html">CodeIgniter Overview</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../overview/getting_started.html">Getting Started</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/at_a_glance.html">CodeIgniter at a Glance</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/features.html">Supported Features</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/appflow.html">Application Flow Chart</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/mvc.html">Model-View-Controller</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/goals.html">Architectural Goals</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../tutorial/index.html">Tutorial</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../tutorial/static_pages.html">Static pages</a></li>
<
li class="toctree-l2"><class="reference internal" href="../tutorial/news_section.html">News section</a></li>
<
li class="toctree-l2"><class="reference internal" href="../tutorial/create_news_items.html">Create news items</a></li>
<
li class="toctree-l2"><class="reference internal" href="../tutorial/conclusion.html">Conclusion</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../contributing/index.html">Contributing to CodeIgniter</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../documentation/index.html">Writing CodeIgniter Documentation</a></li>
<
li class="toctree-l2"><class="reference internal" href="../DCO.html">Developer&#8217;s Certificate of Origin 1.1</a></li>
</ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../general/index.html">General Topics</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../general/urls.html">CodeIgniter URLs</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/controllers.html">Controllers</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/reserved_names.html">Reserved Names</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/views.html">Views</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/models.html">Models</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/helpers.html">Helpers</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/libraries.html">Using CodeIgniter Libraries</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/creating_libraries.html">Creating Libraries</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/drivers.html">Using CodeIgniter Drivers</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/creating_drivers.html">Creating Drivers</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/core_classes.html">Creating Core System Classes</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/ancillary_classes.html">Creating Ancillary Classes</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/hooks.html">Hooks Extending the Framework Core</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/autoloader.html">Auto-loading Resources</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/common_functions.html">Common Functions</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/compatibility_functions.html">Compatibility Functions</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/routing.html">URI Routing</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/errors.html">Error Handling</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/caching.html">Caching</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/profiling.html">Profiling Your Application</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/cli.html">Running via the CLI</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/managing_apps.html">Managing your Applications</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/environments.html">Handling Multiple Environments</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/alternative_php.html">Alternate PHP Syntax for View Files</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/security.html">Security</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/styleguide.html">PHP Style Guide</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../libraries/index.html">Libraries</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../libraries/benchmark.html">Benchmarking Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/caching.html">Caching Driver</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/calendar.html">Calendaring Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/cart.html">Shopping Cart Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/config.html">Config Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/email.html">Email Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/encrypt.html">Encrypt Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/encryption.html">Encryption Library</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/file_uploading.html">File Uploading Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/form_validation.html">Form Validation</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/ftp.html">FTP Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/image_lib.html">Image Manipulation Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/input.html">Input Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/javascript.html">Javascript Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/language.html">Language Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/loader.html">Loader Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/migration.html">Migrations Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/output.html">Output Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/pagination.html">Pagination Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/parser.html">Template Parser Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/security.html">Security Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/sessions.html">Session Library</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/table.html">HTML Table Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/trackback.html">Trackback Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/typography.html">Typography Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/unit_testing.html">Unit Testing Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/uri.html">URI Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/user_agent.html">User Agent Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/xmlrpc.html">XML-RPC and XML-RPC Server Classes</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/zip.html">Zip Encoding Class</a></li>
</
ul>
</
li>
</
ul>
<
ul class="current">
<
li class="toctree-l1 current"><class="reference internal" href="index.html">Database Reference</a><ul class="current">
<
li class="toctree-l2"><class="reference internal" href="examples.html">Quick StartUsage Examples</a></li>
<
li class="toctree-l2"><class="reference internal" href="configuration.html">Database Configuration</a></li>
<
li class="toctree-l2"><class="reference internal" href="connecting.html">Connecting to a Database</a></li>
<
li class="toctree-l2"><class="reference internal" href="queries.html">Running Queries</a></li>
<
li class="toctree-l2"><class="reference internal" href="results.html">Generating Query Results</a></li>
<
li class="toctree-l2"><class="reference internal" href="helpers.html">Query Helper Functions</a></li>
<
li class="toctree-l2"><class="reference internal" href="query_builder.html">Query Builder Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="transactions.html">Transactions</a></li>
<
li class="toctree-l2"><class="reference internal" href="metadata.html">Getting MetaData</a></li>
<
li class="toctree-l2"><class="reference internal" href="call_function.html">Custom Function Calls</a></li>
<
li class="toctree-l2 current"><class="current reference internal" href="">Query Caching</a></li>
<
li class="toctree-l2"><class="reference internal" href="forge.html">Database Manipulation with Database Forge</a></li>
<
li class="toctree-l2"><class="reference internal" href="utilities.html">Database Utilities Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="db_driver_reference.html">Database Driver Reference</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../helpers/index.html">Helpers</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../helpers/array_helper.html">Array Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/captcha_helper.html">CAPTCHA Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/cookie_helper.html">Cookie Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/date_helper.html">Date Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/directory_helper.html">Directory Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/download_helper.html">Download Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/email_helper.html">Email Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/file_helper.html">File Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/form_helper.html">Form Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/html_helper.html">HTML Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/inflector_helper.html">Inflector Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/language_helper.html">Language Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/number_helper.html">Number Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/path_helper.html">Path Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/security_helper.html">Security Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/smiley_helper.html">Smiley Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/string_helper.html">String Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/text_helper.html">Text Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/typography_helper.html">Typography Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/url_helper.html">URL Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/xml_helper.html">XML Helper</a></li>
</
ul>
</
li>
</
ul>

      </
div>
    
      
  </
div>
</
div>
<
div id="nav2">
  <
a href="#" id="openToc">
    <
img src="data:image/jpeg;base64,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" title="Toggle Table of Contents" alt="Toggle Table of Contents" />
  </
a>
</
div>

  <
div class="wy-grid-for-nav">

    
    <
nav data-toggle="wy-nav-shift" class="wy-nav-side">
      <
div class="wy-side-nav-search">
        
          <
a href="../index.html" class="fa fa-home"CodeIgniter</a>
        
        
<
div role="search">
  <
form id="rtd-search-form" class="wy-form" action="../search.html" method="get">
    <
input type="text" name="q" placeholder="Search docs" />
    <
input type="hidden" name="check_keywords" value="yes" />
    <
input type="hidden" name="area" value="default" />
  </
form>
</
div>
      </
div>

      <
div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
        
          
          
              <
ul>
<
li class="toctree-l1"><class="reference internal" href="../general/welcome.html">Welcome to CodeIgniter</a><ul class="simple">
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../installation/index.html">Installation Instructions</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../installation/downloads.html">Downloading CodeIgniter</a></li>
<
li class="toctree-l2"><class="reference internal" href="../installation/index.html">Installation Instructions</a></li>
<
li class="toctree-l2"><class="reference internal" href="../installation/upgrading.html">Upgrading From a Previous Version</a></li>
<
li class="toctree-l2"><class="reference internal" href="../installation/troubleshooting.html">Troubleshooting</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../overview/index.html">CodeIgniter Overview</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../overview/getting_started.html">Getting Started</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/at_a_glance.html">CodeIgniter at a Glance</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/features.html">Supported Features</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/appflow.html">Application Flow Chart</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/mvc.html">Model-View-Controller</a></li>
<
li class="toctree-l2"><class="reference internal" href="../overview/goals.html">Architectural Goals</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../tutorial/index.html">Tutorial</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../tutorial/static_pages.html">Static pages</a></li>
<
li class="toctree-l2"><class="reference internal" href="../tutorial/news_section.html">News section</a></li>
<
li class="toctree-l2"><class="reference internal" href="../tutorial/create_news_items.html">Create news items</a></li>
<
li class="toctree-l2"><class="reference internal" href="../tutorial/conclusion.html">Conclusion</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../contributing/index.html">Contributing to CodeIgniter</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../documentation/index.html">Writing CodeIgniter Documentation</a></li>
<
li class="toctree-l2"><class="reference internal" href="../DCO.html">Developer&#8217;s Certificate of Origin 1.1</a></li>
</ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../general/index.html">General Topics</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../general/urls.html">CodeIgniter URLs</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/controllers.html">Controllers</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/reserved_names.html">Reserved Names</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/views.html">Views</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/models.html">Models</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/helpers.html">Helpers</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/libraries.html">Using CodeIgniter Libraries</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/creating_libraries.html">Creating Libraries</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/drivers.html">Using CodeIgniter Drivers</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/creating_drivers.html">Creating Drivers</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/core_classes.html">Creating Core System Classes</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/ancillary_classes.html">Creating Ancillary Classes</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/hooks.html">Hooks Extending the Framework Core</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/autoloader.html">Auto-loading Resources</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/common_functions.html">Common Functions</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/compatibility_functions.html">Compatibility Functions</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/routing.html">URI Routing</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/errors.html">Error Handling</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/caching.html">Caching</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/profiling.html">Profiling Your Application</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/cli.html">Running via the CLI</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/managing_apps.html">Managing your Applications</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/environments.html">Handling Multiple Environments</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/alternative_php.html">Alternate PHP Syntax for View Files</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/security.html">Security</a></li>
<
li class="toctree-l2"><class="reference internal" href="../general/styleguide.html">PHP Style Guide</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../libraries/index.html">Libraries</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../libraries/benchmark.html">Benchmarking Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/caching.html">Caching Driver</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/calendar.html">Calendaring Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/cart.html">Shopping Cart Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/config.html">Config Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/email.html">Email Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/encrypt.html">Encrypt Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/encryption.html">Encryption Library</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/file_uploading.html">File Uploading Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/form_validation.html">Form Validation</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/ftp.html">FTP Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/image_lib.html">Image Manipulation Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/input.html">Input Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/javascript.html">Javascript Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/language.html">Language Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/loader.html">Loader Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/migration.html">Migrations Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/output.html">Output Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/pagination.html">Pagination Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/parser.html">Template Parser Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/security.html">Security Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/sessions.html">Session Library</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/table.html">HTML Table Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/trackback.html">Trackback Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/typography.html">Typography Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/unit_testing.html">Unit Testing Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/uri.html">URI Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/user_agent.html">User Agent Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/xmlrpc.html">XML-RPC and XML-RPC Server Classes</a></li>
<
li class="toctree-l2"><class="reference internal" href="../libraries/zip.html">Zip Encoding Class</a></li>
</
ul>
</
li>
</
ul>
<
ul class="current">
<
li class="toctree-l1 current"><class="reference internal" href="index.html">Database Reference</a><ul class="current">
<
li class="toctree-l2"><class="reference internal" href="examples.html">Quick StartUsage Examples</a></li>
<
li class="toctree-l2"><class="reference internal" href="configuration.html">Database Configuration</a></li>
<
li class="toctree-l2"><class="reference internal" href="connecting.html">Connecting to a Database</a></li>
<
li class="toctree-l2"><class="reference internal" href="queries.html">Running Queries</a></li>
<
li class="toctree-l2"><class="reference internal" href="results.html">Generating Query Results</a></li>
<
li class="toctree-l2"><class="reference internal" href="helpers.html">Query Helper Functions</a></li>
<
li class="toctree-l2"><class="reference internal" href="query_builder.html">Query Builder Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="transactions.html">Transactions</a></li>
<
li class="toctree-l2"><class="reference internal" href="metadata.html">Getting MetaData</a></li>
<
li class="toctree-l2"><class="reference internal" href="call_function.html">Custom Function Calls</a></li>
<
li class="toctree-l2 current"><class="current reference internal" href="">Query Caching</a></li>
<
li class="toctree-l2"><class="reference internal" href="forge.html">Database Manipulation with Database Forge</a></li>
<
li class="toctree-l2"><class="reference internal" href="utilities.html">Database Utilities Class</a></li>
<
li class="toctree-l2"><class="reference internal" href="db_driver_reference.html">Database Driver Reference</a></li>
</
ul>
</
li>
</
ul>
<
ul>
<
li class="toctree-l1"><class="reference internal" href="../helpers/index.html">Helpers</a><ul>
<
li class="toctree-l2"><class="reference internal" href="../helpers/array_helper.html">Array Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/captcha_helper.html">CAPTCHA Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/cookie_helper.html">Cookie Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/date_helper.html">Date Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/directory_helper.html">Directory Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/download_helper.html">Download Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/email_helper.html">Email Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/file_helper.html">File Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/form_helper.html">Form Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/html_helper.html">HTML Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/inflector_helper.html">Inflector Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/language_helper.html">Language Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/number_helper.html">Number Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/path_helper.html">Path Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/security_helper.html">Security Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/smiley_helper.html">Smiley Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/string_helper.html">String Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/text_helper.html">Text Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/typography_helper.html">Typography Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/url_helper.html">URL Helper</a></li>
<
li class="toctree-l2"><class="reference internal" href="../helpers/xml_helper.html">XML Helper</a></li>
</
ul>
</
li>
</
ul>

          
        
      </
div>
      &
nbsp;
    </
nav>

    <
section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">

      
      <
nav class="wy-nav-top" role="navigation" aria-label="top navigation">
        <
i data-toggle="wy-nav-top" class="fa fa-bars"></i>
        <
a href="../index.html">CodeIgniter</a>
      </
nav>


      
      <
div class="wy-nav-content">
        <
div class="rst-content">
          <
div role="navigation" aria-label="breadcrumbs navigation">
  <
ul class="wy-breadcrumbs">
    <
li><a href="../index.html">Docs</a> &raquo;</li>
      
        <
li><a href="index.html">Database Reference</a> &raquo;</li>
      
    <
li>Database Caching Class</li>
    <
li class="wy-breadcrumbs-aside">
      
    </
li>
    <
div style="float:right;margin-left:5px;" id="closeMe">
      <
img title="Classic Layout" alt="classic layout" src="data:image/gif;base64,R0lGODlhFAAUAJEAAAAAADMzM////wAAACH5BAUUAAIALAAAAAAUABQAAAImlI+py+0PU5gRBRDM3DxbWoXis42X13USOLauUIqnlsaH/eY6UwAAOw==" />
    </
div>
  </
ul>
  <
hr/>
</
div>
          <
div role="main" class="document">
            
  <
div class="section" id="database-caching-class">
<
h1>Database Caching Class<class="headerlink" href="#database-caching-class" title="Permalink to this headline"></a></h1>
<
p>The Database Caching Class permits you to cache your queries as text
files 
for reduced database load.</p>
<
div class="admonition important">
<
class="first admonition-title">Important</p>
<
class="last">This class is initialized automatically by the database
driver when caching is enabled
. Do NOT load this class manually.</p>
</
div>
<
div class="admonition important">
<
class="first admonition-title">Important</p>
<
class="last">Not all query result functions are available when you
use cachingPlease read this page carefully.</p>
</
div>
<
div class="section" id="enabling-caching">
<
h2>Enabling Caching<class="headerlink" href="#enabling-caching" title="Permalink to this headline"></a></h2>
<
p>Caching is enabled in three steps:</p>
<
ul class="simple">
<
li>Create a writable directory on your server where the cache files can
be stored
.</li>
<
li>Set the path to your cache folder in your
application
/config/database.php file.</li>
<
li>Enable the caching featureeither globally by setting the preference
in your application
/config/database.php file, or manually as
described below.</li>
</
ul>
<
p>Once enabledcaching will happen automatically whenever a page is
loaded that contains database queries
.</p>
</
div>
<
div class="section" id="how-does-caching-work">
<
h2>How Does Caching Work?<class="headerlink" href="#how-does-caching-work" title="Permalink to this headline"></a></h2>
<
p>CodeIgniter&#8217;s query caching system happens dynamically when your pages
are viewedWhen caching is enabledthe first time a web page is
loaded
the query result object will be serialized and stored in a text
file on your server
The next time the page is loaded the cache file
will be used instead of accessing your database
Your database usage can
effectively be reduced to zero 
for any pages that have been cached.</p>
<
p>Only read-type (SELECTqueries can be cachedsince these are the only
type of queries that produce a result
Write-type (INSERTUPDATEetc.)
queriessince they don&#8217;t generate a result, will not be cached by the
system.</p>
<
p>Cache files DO NOT expireAny queries that have been cached will remain
cached until you delete them
The caching system permits you clear
caches associated with individual pages
, or you can delete the entire
collection of cache files
Typically you&#8217;ll want to use the housekeeping
functions described below to delete cache files after certain events
take place
like when you&#8217;ve added new information to your database.</p>
</div>
<
div class="section" id="will-caching-improve-your-site-s-performance">
<
h2>Will Caching Improve Your Site&#8217;s Performance?<a class="headerlink" href="#will-caching-improve-your-site-s-performance" title="Permalink to this headline">¶</a></h2>
<p>Getting a performance gain as a result of caching depends on many
factors
. If you have a highly optimized database under very little load,
you probably won&#8217;t see a performance boost. If your database is under
heavy use you probably will see an improved responseassuming your
file
-system is not overly taxedRemember that caching simply changes
how your information is retrieved
shifting it from being a database
operation to a file
-system one.</p>
<
p>In some clustered server environments, for examplecaching may be
detrimental since file
-system operations are so intenseOn single
servers in shared environments
caching will probably be beneficial.
Unfortunately there is no single answer to the question of whether you
should cache your database
It really depends on your situation.</p>
</
div>
<
div class="section" id="how-are-cache-files-stored">
<
h2>How are Cache Files Stored?<class="headerlink" href="#how-are-cache-files-stored" title="Permalink to this headline"></a></h2>
<
p>CodeIgniter places the result of EACH query into its own cache file.
Sets of cache files are further organized into sub-folders corresponding
to your controller functions
To be precisethe sub-folders are named
identically to the first two segments of your URI 
(the controller class
name and function name).</p>
<
p>For examplelet&#8217;s say you have a controller called blog with a function
called comments that contains three queriesThe caching system will
create a cache folder called blog
+commentsinto which it will write
three cache files
.</p>
<
p>If you use dynamic queries that change based on information in your URI
(when using pagination, for example), each instance of the query will
produce its own cache file
It&#8217;s possible, therefore, to end up with
many times more cache files than you have queries.</p>
</
div>
<
div class="section" id="managing-your-cache-files">
<
h2>Managing your Cache Files<class="headerlink" href="#managing-your-cache-files" title="Permalink to this headline"></a></h2>
<
p>Since cache files do not expireyou&#8217;ll need to build deletion routines
into your application. For examplelet&#8217;s say you have a blog that
allows user commentingWhenever a new comment is submitted you&#8217;ll want
to delete the cache files associated with the controller function that
serves up your comments
You&#8217;ll find two delete functions described
below that help you clear data.</p>
</
div>
<
div class="section" id="not-all-database-functions-work-with-caching">
<
h2>Not All Database Functions Work with Caching<class="headerlink" href="#not-all-database-functions-work-with-caching" title="Permalink to this headline"></a></h2>
<
p>Lastlywe need to point out that the result object that is cached is a
simplified version of the full result object
. For that reasonsome of
the query result functions are not available 
for use.</p>
<
p>The following functions ARE NOT available when using a cached result
object
:</p>
<
ul class="simple">
<
li>num_fields()</li>
<
li>field_names()</li>
<
li>field_data()</li>
<
li>free_result()</li>
</
ul>
<
p>Alsothe two database resources (result_id and conn_idare not
available when caching
since result resources only pertain to run-time
operations
.</p>
<
div class="section" id="function-reference">
<
h3>Function Reference<class="headerlink" href="#function-reference" title="Permalink to this headline"></a></h3>
</
div>
</
div>
<
div class="section" id="this-db-cache-on-this-db-cache-off">
<
h2>$this-&gt;db-&gt;cache_on() / $this-&gt;db-&gt;cache_off()<class="headerlink" href="#this-db-cache-on-this-db-cache-off" title="Permalink to this headline"></a></h2>
<
p>Manually enables/disables cachingThis can be useful if you want to
keep certain queries from being cached
Example:</p>
<
div class="highlight-ci"><div class="highlight"><pre><span class="c1">// Turn caching on</span>
<span class="nv">$this</span><span class="o">-&gt;</span><span class="na">db</span><span class="o">-&gt;</span><span class="na">cache_on</span><span class="p">();</span>
<
span class="nv">$query</span> <span class="o">=</span> <span class="nv">$this</span><span class="o">-&gt;</span><span class="na">db</span><span class="o">-&gt;</span><span class="na">query</span><span class="p">(</span><span class="s2">&quot;SELECT FROM mytable&quot;</span><span class="p">);</span>

<
span class="c1">// Turn caching off for this one query</span>
<span class="nv">$this</span><span class="o">-&gt;</span><span class="na">db</span><span class="o">-&gt;</span><span class="na">cache_off</span><span class="p">();</span>
<
span class="nv">$query</span> <span class="o">=</span> <span class="nv">$this</span><span class="o">-&gt;</span><span class="na">db</span><span class="o">-&gt;</span><span class="na">query</span><span class="p">(</span><span class="s2">&quot;SELECT FROM members WHERE member_id = &#39;</span><span class="si">$current_user</span><span class="s2">&#39;&quot;</span><span class="p">);</span>

<span class="c1">// Turn caching back on</span>
<span class="nv">$this</span><span class="o">-&gt;</span><span class="na">db</span><span class="o">-&gt;</span><span class="na">cache_on</span><span class="p">();</span>
<
span class="nv">$query</span> <span class="o">=</span> <span class="nv">$this</span><span class="o">-&gt;</span><span class="na">db</span><span class="o">-&gt;</span><span class="na">query</span><span class="p">(</span><span class="s2">&quot;SELECT FROM another_table&quot;</span><span class="p">);</span>
</
pre></div>
</
div>
</
div>
<
div class="section" id="this-db-cache-delete">
<
h2>$this-&gt;db-&gt;cache_delete()<class="headerlink" href="#this-db-cache-delete" title="Permalink to this headline"></a></h2>
<
p>Deletes the cache files associated with a particular pageThis is
useful 
if you need to clear caching after you update your database.</p>
<
p>The caching system saves your cache files to folders that correspond to
the URI of the page you are viewing
. For example, if you are viewing a
page at example
.com/index.php/blog/commentsthe caching system will put
all cache files associated with it in a folder called blog
+commentsTo
delete those particular cache files you will 
use:</p>
<
div class="highlight-ci"><div class="highlight"><pre><span class="nv">$this</span><span class="o">-&gt;</span><span class="na">db</span><span class="o">-&gt;</span><span class="na">cache_delete</span><span class="p">(</span><span class="s1">&#39;blog&#39;</span><span class="p">,</span> <span class="s1">&#39;comments&#39;</span><span class="p">);</span>
</pre></div>
</
div>
<
p>If you do not use any parameters the current URI will be used when
determining what should be cleared
.</p>
</
div>
<
div class="section" id="this-db-cache-delete-all">
<
h2>$this-&gt;db-&gt;cache_delete_all()<class="headerlink" href="#this-db-cache-delete-all" title="Permalink to this headline"></a></h2>
<
p>Clears all existing cache filesExample:</p>
<
div class="highlight-ci"><div class="highlight"><pre><span class="nv">$this</span><span class="o">-&gt;</span><span class="na">db</span><span class="o">-&gt;</span><span class="na">cache_delete_all</span><span class="p">();</span>
</
pre></div>
</
div>
</
div>
</
div>


          </
div>
          <
footer>
  
    <
div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
      
        <
a href="forge.html" class="btn btn-neutral float-right" title="Database Forge Class">Next <span class="fa fa-arrow-circle-right"></span></a>
      
      
        <
a href="call_function.html" class="btn btn-neutral" title="Custom Function Calls"><span class="fa fa-arrow-circle-left"></spanPrevious</a>
      
    </
div>
  

  <
hr/>

  <
div role="contentinfo">
    <
p>
        &
copyCopyright 2014 2015British Columbia Institute of Technology.
      
Last updated on Oct 312015.
    
</p>
  </
div>

  
Built with <a href="http://sphinx-doc.org/">Sphinx</ausing a <a href="https://github.com/snide/sphinx_rtd_theme">theme</aprovided by <a href="https://readthedocs.org">Read the Docs</a>.
  
</
footer>
        </
div>
      </
div>

    </
section>

  </
div>
  


  

    <
script type="text/javascript">
        var 
DOCUMENTATION_OPTIONS = {
            
URL_ROOT:'../',
            
VERSION:'3.0.3',
            
COLLAPSE_INDEX:false,
            
FILE_SUFFIX:'.html',
            
HAS_SOURCE:  false
        
};
    </
script>
      <
script type="text/javascript" src="../_static/jquery.js"></script>
      <
script type="text/javascript" src="../_static/underscore.js"></script>
      <
script type="text/javascript" src="../_static/doctools.js"></script>

  

  
  
    <
script type="text/javascript" src="../_static/js/theme.js"></script>
  

  
  
  <
script type="text/javascript">
      
jQuery(function () {
          
SphinxRtdTheme.StickyNav.enable();
      });
  </
script>
   

</
body>
</
html>
?>
Онлайн: 0
Реклама