123456789101112131415161718192021222324252627 |
- <?php
- use Twig\Environment;
- use Twig\Loader\FilesystemLoader;
- use Twig\TwigFilter;
- use Twig\TwigFunction;
- $loader = new FilesystemLoader($_SERVER['DOCUMENT_ROOT'].'/templates');
- $twig = new Environment($loader, [
- 'debug' => $DEV_MODE,
- 'cache' => $_SERVER['DOCUMENT_ROOT'].'/templates/cache',
- ]);
- // functions
- $twig->addFunction(new TwigFunction('query_string', function (array $params = []) {
- return http_build_query(array_merge($_GET, $params));
- }));
- $twig->addFunction(new TwigFunction('is_uri', function (string $uri, string $where = null) {
- if (is_null($where)) $where = $_SERVER['REQUEST_URI'];
- return preg_match('/'.$uri.'/i', $where);
- }));
- // filters
- $twig->addFilter(new TwigFilter('rot13', 'str_rot13'));
- $twig->addFilter(new TwigFilter('base64_encode', 'base64_encode'));
- $twig->addFilter(new TwigFilter('formatBytes', 'formatBytes'));
|