Files
smarty/docs/de/programmers/caching/caching-groups.xml
2005-12-10 09:27:40 +00:00

85 lines
3.0 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1.5 Maintainer: andreas Status: ready -->
<sect1 id="caching.groups">
<title>Cache-Gruppen</title>
<para>
Sie können auch eine feinere Gruppierung vornehmen, indem Sie
'cache_id'-Gruppen erzeugen. Dies erreichen Sie, indem Sie jede Cache-Untergruppe
durch ein '|'-Zeichen (pipe) in der 'cache_id' abtrennen. Sie können so viele
Untergruppen erstellen, wie Sie möchten.
</para>
<para>
Man kann Cache-Gruppen wie eine Verzeichnishierarchie
betrachten. Zum Beispiel kann man sich die Cache-Gruppe "a|b|c" als
eine Verzeichnisstruktur "/a/b/c" angesehen weden. clear_cache(null,
'a|b|c') würde die Dateien '/a/b/c/*' löschen, clear_cache(null,
'a|b') wäre das Löschen der Dateien '/a/b/*'. Wenn eine Compile-Id
angegeben wurde, wie clear_cache(null, 'a|b', 'foo'), dann wird die
Compile-Id so behandelt, als sei sie an die Cache-Gruppe angehängt,
also wie die Cache-Gruppe '/a/b/foo'. Wenn ein Templatename
angegeben wurde, also wie bei clear_cache('foo.tpl', 'a|b|c'), dann
wir Smarty auch nur '/a/b/c/foo.tpl' löschen. Es ist NICHT möglich,
ein Template unterhalb mehrerer Cache-Gruppen (also
'/a/b/*/foo.tpl') zu löschen. Das Gruppieren der Cache-Gruppen
funktioniert nur von links nach rechts. Man muss die Templates, die
man als eine Gruppe löschen möchte alle unterhalb einer einzigen
Gruppenhierarchy anordnen, um sie als eine Gruppe löschen zu können.
</para>
<para>
Cache-Gruppen dürfen nicht mit der Hierarchie des
Template-Verzeichnisses verwechselt werden. Die Cache-Gruppen wissen
nicht, wie die Templatehierarchie strukturiert ist. Wenn man
z. B. eine Templatestruktur wir "themes/blue/index.tpl" hat und man
möchte alle Dateien für des "blue"-Theme löschen, dann muss man
händisch eine Cache-Gruppe wie display("themes/blue/index.tpl",
"themes|blue") und kann diese dann mit
clear_cache(null,"themes|blue") löschen.
</para>
<example>
<title>'cache_id'-Gruppen</title>
<programlisting>
<![CDATA[
<?php
require('Smarty.class.php');
$smarty = new Smarty;
$smarty->caching = true;
// leere alle Caches welche 'sports|basketball' als erste zwei 'cache_id'-Gruppen enthalten
$smarty->clear_cache(null, 'sports|basketball');
// leere alle Caches welche 'sports' als erste 'cache_id'-Gruppe haben. Dies schliesst
// 'sports|basketball', oder 'sports|(anything)|(anything)|(anything)|...' ein
$smarty->clear_cache(null, 'sports');
$smarty->display('index.tpl', 'sports|basketball');
?>
]]>
</programlisting>
</example>
</sect1>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->