Home  >  Article  >  Backend Development  >  每天laravel-20160820| ContextualBinding

每天laravel-20160820| ContextualBinding

WBOY
WBOYOriginal
2016-06-20 12:26:541513browse

<?phpnamespace Illuminate\Container;use Illuminate\Contracts\Container\ContextualBindingBuilder as ContextualBindingBuilderContract;class ContextualBindingBuilder implements ContextualBindingBuilderContract{    /**     * The underlying container instance.     *     * @var \Illuminate\Container\Container     */    protected $container;// The underlying container instance    /**     * The concrete instance.     *     * @var string     */    protected $concrete;// a instance about concrete    /**     * The abstract target.     *     * @var string     */    protected $needs;// a target about the abstract    /**     * Create a new contextual binding builder.     *     * @param  \Illuminate\Container\Container  $container     * @param  string  $concrete     * @return void     */    public function __construct(Container $container, $concrete)    {        $this->concrete = $concrete;        $this->container = $container;// set the    }    /**     * Define the abstract target that depends on the context.     *     * @param  string  $abstract     * @return $this     */    public function needs($abstract)    {        $this->needs = $abstract;        return $this;    }// function is needs    /**     * Define the implementation for the contextual binding.     *     * @param  \Closure|string  $implementation     * @return void     */    public function give($implementation)    {        $this->container->addContextualBinding($this->concrete, $this->needs, $implementation);    }// Define the implementation for the contextual binding}


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn