[李景山php]每天laravel-20161110|Factory.php
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[李景山php]每天laravel-20161110|Factory.php相关的知识,希望对你有一定的参考价值。
<?php namespace Illuminate\View; use Closure; use Illuminate\Support\Arr; use Illuminate\Support\Str; use InvalidArgumentException; use Illuminate\Contracts\Support\Arrayable; use Illuminate\View\Engines\EngineResolver; use Illuminate\Contracts\Events\Dispatcher; use Illuminate\Contracts\Container\Container; use Illuminate\Contracts\View\Factory as FactoryContract; // super cool namespace class Factory implements FactoryContract {// factory implements the Factory Contract /** * The engine implementation. * * @var \Illuminate\View\Engines\EngineResolver */ protected $engines;// The engine implementation /** * The view finder implementation. * * @var \Illuminate\View\ViewFinderInterface */ protected $finder;//The view finder implementation,this protected /** * The event dispatcher instance. * * @var \Illuminate\Contracts\Events\Dispatcher */ protected $events;// the event dispatcher instance /** * The IoC container instance. * * @var \Illuminate\Contracts\Container\Container */ protected $container;//The IoC container instance /** * Data that should be available to all templates. * * @var array */ protected $shared = [];//Data that should be available to all templates. // this mind may be too expensive /** * Array of registered view name aliases. * * @var array */ protected $aliases = [];// array of registered view name aliases. /** * All of the registered view names. * * @var array */ protected $names = [];//all of the registered view names. /** * The extension to engine bindings. * * @var array */ protected $extensions = [‘blade.php‘ => ‘blade‘, ‘php‘ => ‘php‘]; // The extension to engine bindings. /** * The view composer events. * * @var array */ protected $composers = [];//The view composer events /** * All of the finished, captured sections. * * @var array */ protected $sections = [];//All of the finished, captured sections /** * The stack of in-progress sections. * * @var array */ protected $sectionStack = [];//The stack of in-progress sections. /** * The number of active rendering operations. * * @var int */ protected $renderCount = 0;// The number of active rendering operations. /** * Create a new view factory instance. * * @param \Illuminate\View\Engines\EngineResolver $engines * @param \Illuminate\View\ViewFinderInterface $finder * @param \Illuminate\Contracts\Events\Dispatcher $events * @return void */ public function __construct(EngineResolver $engines, ViewFinderInterface $finder, Dispatcher $events) {// create a new view factory instance. $this->finder = $finder; $this->events = $events; $this->engines = $engines;// get this engines $this->share(‘__env‘, $this); }//share env /** * Get the evaluated view contents for the given view. * * @param string $path * @param array $data * @param array $mergeData * @return \Illuminate\Contracts\View\View */ public function file($path, $data = [], $mergeData = []) {// get the data $data = array_merge($mergeData, $this->parseData($data)); // array_merge $this->callCreator($view = new View($this, $this->getEngineFromPath($path), $path, $path, $data)); // callCreator return $view; }// Get the evaluated view contents for the given view.
本文出自 “专注php 群号:414194301” 博客,请务必保留此出处http://jingshanls.blog.51cto.com/3357095/1847098
以上是关于[李景山php]每天laravel-20161110|Factory.php的主要内容,如果未能解决你的问题,请参考以下文章
[李景山php]每天laravel-20161028|Translator.php
[李景山php]每天laravel-20161107|PhpEngine.php
[李景山php]每天laravel-20161106|EngineResolver.php
[李景山php]每天laravel-20161108|ShareErrorsFromSession.php