Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Recipe code formatting fix. New recipe for improved APC bytecode support

  • Loading branch information...
commit eb5c9fbcc7c73f20e2f64b23f392a84b3d0943ba 1 parent 027f489
Andreas Runfalk authored
Showing with 27 additions and 7 deletions.
  1. +27 −7 doc/recipes.rst
34 doc/recipes.rst
View
@@ -246,14 +246,34 @@ Validating the Template Syntax
When template code is providing by a third-party (through a web interface for
instance), it might be interesting to validate the template syntax before
saving it. If the template code is stored in a `$template` variable, here is
-how you can do it:
+how you can do it::
-try {
- $twig->parse($twig->tokenize($template));
+ try {
+ $twig->parse($twig->tokenize($template));
+ // the $template is valid
+ } catch (Twig_Error_Syntax $e) {
+ // $template contains one or more syntax errors
+ }
+
+Refreshing modified templates when APC is switched on with apc.stat = 0
+-----------------------------------------------------------------------
+
+When using APC to cache, apc.stat is 0 and PHP caching of templates is enabled
+the result won't show until cache is cleared. To get around this one can extend
+Twig_Environment and force update cache when Twig rewrites the cache::
+
+ /**
+ * Modified Twig Environment for APC bytecode cache support
+ */
+ class Twig_Environment_APC extends Twig_Environment
+ {
+
+ protected function writeCacheFile($file, $content) {
+ parent::writeCacheFile($file, $content);
- // the $template is valid
-} catch (Twig_Error_Syntax $e) {
- // $template contains one or more syntax errors
-}
+ // Compile cached file into bytecode cache
+ apc_compile_file($file);
+ }
+ }
.. _callback: http://www.php.net/manual/en/function.is-callable.php
Please sign in to comment.
Something went wrong with that request. Please try again.