cvs: smarty /docs/en/programmers/api-functions api-is-cached.xml

"Messju Mohr" <[email protected]>
Newsgroups gmane.comp.php.cvs.smarty
Message-ID <cvsmessju1088757212@cvsserver>
messju		Fri Jul  2 04:33:32 2004 EDT

  Modified files:              
    /smarty/docs/en/programmers/api-functions	api-is-cached.xml 
  Log:
  added $compile_id parameter
  and a note about is_cached's internals
  
  
  
http://cvs.php.net/diff.php/smarty/docs/en/programmers/api-functions/api-is-cached.xml?r1=1.2&r2=1.3&ty=u
Index: smarty/docs/en/programmers/api-functions/api-is-cached.xml
diff -u smarty/docs/en/programmers/api-functions/api-is-cached.xml:1.2 smarty/docs/en/programmers/api-functions/api-is-cached.xml:1.3
--- smarty/docs/en/programmers/api-functions/api-is-cached.xml:1.2	Sun Apr 18 15:22:55 2004
+++ smarty/docs/en/programmers/api-functions/api-is-cached.xml	Fri Jul  2 04:33:32 2004
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.2 $ -->
+<!-- $Revision: 1.3 $ -->
 <refentry id="api.is.cached">
  <refnamediv>
   <refname>is_cached</refname>
@@ -11,6 +11,7 @@
    <type>bool</type><methodname>is_cached</methodname>
    <methodparam><type>string</type><parameter>template</parameter></methodparam>
    <methodparam choice="opt"><type>string</type><parameter>cache_id</parameter></methodparam>
+   <methodparam choice="opt"><type>string</type><parameter>compile_id</parameter></methodparam>
   </methodsynopsis>
   <para>
    This returns &true; if there is a valid cache for this template.
@@ -37,6 +38,15 @@
    You can also pass a cache id as an optional second parameter
    in case you want multiple caches for the given template.
   </para>
+  <para>
+   You can supply a compile id as an optional third parameter.
+   If you omit that parameter the persistent 
+   <link linkend="variable.compile.id">$compile_id</link> is used.
+  </para>
+  <para>
+   If you do not want to pass a cache id but want to pass a compile
+   id you have to pass <literal>null</literal> as cache id.
+  </para>
   <example>
    <title>is_cached with multiple-cache template</title>
    <programlisting role="php">
@@ -53,6 +63,24 @@
 ]]>
    </programlisting>
   </example>
+
+
+  <note>
+  <title>Technical Note</title>
+  <para>
+   If <literal>is_cached</literal> returns true it actually loads the
+   cached output and stores it internally. Any subsequent call to
+   <link linkend="api.display">display()</link> or
+   <link linkend="api.fetch">fetch()</link>
+   will return this internally stored output and does not try to reload
+   the cache file. This prevents a race condition that may occur when a
+   second process clears the cache between the calls to is_cached and to
+   display in the example above. This also means calls to
+   <link linkend="api.clear.cache">clear_cache()</link>
+   and other changes of the cache-settings may have no effect after
+   <literal>is_cached</literal> returned true.
+  </para>
+  </note>
  </refsect1>
 </refentry>
 <!-- Keep this comment at the end of the file

-- 
Smarty CVS Mailing List (http://cvs.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.