Viewing file: CompilesLayouts.php (2.94 KB) -rwxrwxrwx Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
namespace Illuminate\View\Compilers\Concerns;
use Illuminate\View\Factory as ViewFactory;
trait CompilesLayouts { /** * The name of the last section that was started. * * @var string */ protected $lastSection;
/** * Compile the extends statements into valid PHP. * * @param string $expression * @return string */ protected function compileExtends($expression) { $expression = $this->stripParentheses($expression);
$echo = "<?php echo \$__env->make({$expression}, \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>";
$this->footer[] = $echo;
return ''; }
/** * Compile the extends-first statements into valid PHP. * * @param string $expression * @return string */ protected function compileExtendsFirst($expression) { $expression = $this->stripParentheses($expression);
$echo = "<?php echo \$__env->first({$expression}, \Illuminate\Support\Arr::except(get_defined_vars(), ['__data', '__path']))->render(); ?>";
$this->footer[] = $echo;
return ''; }
/** * Compile the section statements into valid PHP. * * @param string $expression * @return string */ protected function compileSection($expression) { $this->lastSection = trim($expression, "()'\" ");
return "<?php \$__env->startSection{$expression}; ?>"; }
/** * Replace the @parent directive to a placeholder. * * @return string */ protected function compileParent() { return ViewFactory::parentPlaceholder($this->lastSection ?: ''); }
/** * Compile the yield statements into valid PHP. * * @param string $expression * @return string */ protected function compileYield($expression) { return "<?php echo \$__env->yieldContent{$expression}; ?>"; }
/** * Compile the show statements into valid PHP. * * @return string */ protected function compileShow() { return '<?php echo $__env->yieldSection(); ?>'; }
/** * Compile the append statements into valid PHP. * * @return string */ protected function compileAppend() { return '<?php $__env->appendSection(); ?>'; }
/** * Compile the overwrite statements into valid PHP. * * @return string */ protected function compileOverwrite() { return '<?php $__env->stopSection(true); ?>'; }
/** * Compile the stop statements into valid PHP. * * @return string */ protected function compileStop() { return '<?php $__env->stopSection(); ?>'; }
/** * Compile the end-section statements into valid PHP. * * @return string */ protected function compileEndsection() { return '<?php $__env->stopSection(); ?>'; } }
|