关闭

每天laravel-20160820| ContextualBinding

91人阅读 评论(0) 收藏 举报
分类:
<?php

namespace 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
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:125351次
    • 积分:7064
    • 等级:
    • 排名:第3319名
    • 原创:607篇
    • 转载:22篇
    • 译文:0篇
    • 评论:9条
    文章分类
    最新评论