/** * Register the Blade view engine with Laravel. * * @return void */ public static function sharpen() { Event::listen(View::engine, function ($view) { // The Blade view engine should only handle the rendering of views which // end with the Blade extension. If the given view does not, we will // return false so the View can be rendered as normal. if (!str_contains($view->path, BLADE_EXT)) { //return; } $compiled = Blade::compiled($view->path); // If the view doesn't exist or has been modified since the last time it // was compiled, we will recompile the view into pure PHP from it's // Blade representation, writing it to cached storage. if (!file_exists($compiled) or Blade::expired($view->view, $view->path)) { file_put_contents($compiled, Blade::compile($view)); } $view->mytplengine or $view->mytplengine = new \TemplateEngine(TEMPLATEPATH); //kd($compiled); $compiled = $view->mytplengine->display($compiled, true); $view->path = $compiled; // Once the view has been compiled, we can simply set the path to the // compiled view on the view instance and call the typical "get" // method on the view to evaluate the compiled PHP view. return ltrim($view->get()); }); }