aboutsummaryrefslogtreecommitdiffstats
path: root/include/smarty/libs/sysplugins/smarty_internal_runtime_hhvm.php
diff options
context:
space:
mode:
Diffstat (limited to 'include/smarty/libs/sysplugins/smarty_internal_runtime_hhvm.php')
-rw-r--r--include/smarty/libs/sysplugins/smarty_internal_runtime_hhvm.php30
1 files changed, 30 insertions, 0 deletions
diff --git a/include/smarty/libs/sysplugins/smarty_internal_runtime_hhvm.php b/include/smarty/libs/sysplugins/smarty_internal_runtime_hhvm.php
new file mode 100644
index 000000000..117cd8166
--- /dev/null
+++ b/include/smarty/libs/sysplugins/smarty_internal_runtime_hhvm.php
@@ -0,0 +1,30 @@
+<?php
+
+/**
+ * Runtime Extension Hhvm
+ *
+ * include patch for modified compiled or cached templates
+ * HHVM does not check if file was modified when including same file multiple times
+ *
+ * @package Smarty
+ * @subpackage PluginsInternal
+ * @author Uwe Tews
+ */
+class Smarty_Internal_Runtime_Hhvm
+{
+ /**
+ * @param \Smarty_Internal_Template $_template
+ * @param string $file file name
+ *
+ * @return mixed
+ */
+ static function includeHhvm(Smarty_Internal_Template $_template, $file)
+ {
+ $_smarty_tpl = $_template;
+ $tmp_file = $file . preg_replace('![^\w]+!', '_', uniqid(rand(), true)) . '.php';
+ file_put_contents($tmp_file, file_get_contents($file));
+ $result = @include $tmp_file;
+ @unlink($tmp_file);
+ return $result;
+ }
+} \ No newline at end of file