매일laravel-20160819|Container -22
/**
* Get the alias for an abstract if available.
*
* @param string $abstract
* @return string
*/
protected function getAlias($abstract)
{// get Alias ,if has aliases return it ,or return it self
return isset($this->aliases[$abstract]) ? $this->aliases[$abstract] : $abstract;
}// Get the alias for an abstract if available.
/**
* Get the container's bindings.
*
* @return array
*/
public function getBindings()
{
return $this->bindings;// return it self like a big _get function
}
/**
* Drop all of the stale instances and aliases.
*
* @param string $abstract
* @return void
*/
protected function dropStaleInstances($abstract)
{
unset($this->instances[$abstract], $this->aliases[$abstract]);
}// drop every thing about the abstract ,
// use the system function unset
/**
* Remove a resolved instance from the instance cache.
*
* @param string $abstract
* @return void
*/
public function forgetInstance($abstract)
{
unset($this->instances[$this->normalize($abstract)]);
}// in php ,drop and remove ,all about this use the unset even forget
/**
* Clear all of the instances from the container.
*
* @return void
*/
public function forgetInstances()
{
$this->instances = [];
}// clear all drop remove forget ,this is better then unset(self)
/**
* Flush the container of all bindings and resolved instances.
*
* @return void
*/
public function flush()
{
$this->aliases = [];
$this->resolved = [];
$this->bindings = [];
$this->instances = [];
}// flush means to refresh it ,so like empty this alias resolved bindings instances
/**
* Set the globally available instance of the container.
*
* @return static
*/
public static function getInstance()
{
return static::$instance;// return the $instance not the self instance.
}
/**
* Set the shared instance of the container.
*
* @param \Illuminate\Contracts\Container\Container $container
* @return void
*/
public static function setInstance(ContainerContract $container)
{
static::$instance = $container;
}// set the instance use the container
/**
* Determine if a given offset exists.
*
* @param string $key
* @return bool
*/
public function offsetExists($key)
{
return isset($this->bindings[$this->normalize($key)]);
}// determine like check ,
// if has the bindings been set return true
/**
* Get the value at a given offset.
*
* @param string $key
* @return mixed
*/
public function offsetGet($key)
{
return $this->make($key);// make is too powerful
}// return it a
/**
* Set the value at a given offset.
*
* @param string $key
* @param mixed $value
* @return void
*/
public function offsetSet($key, $value)
{
// If the value is not a Closure, we will make it one. This simply gives
// more "drop-in" replacement functionality for the Pimple which this
// container's simplest functions are base modeled and built after.
if (! $value instanceof Closure) {
$value = function () use ($value) {
return $value;
};
}// if the value is a Closure.
$this->bind($key, $value);// use bind function
}
/**
* Unset the value at a given offset.
*
* @param string $key
* @return void
*/
public function offsetUnset($key)
{
$key = $this->normalize($key);
unset($this->bindings[$key], $this->instances[$key], $this->resolved[$key]);
}// unset all offset
/**
* Dynamically access container services.
*
* @param string $key
* @return mixed
*/
public function __get($key)
{
return $this[$key];// a big
}
/**
* Dynamically set container services.
*
* @param string $key
* @param mixed $value
* @return void
*/
public function __set($key, $value)
{
$this[$key] = $value; // big set
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
useEffect 안에서의 리턴??인스타 클론하다가 또 다시 배운 기능이다. useEffect안에서 리턴을 한다?? 찾아보니 componentWillUnmount와 같은 효과를 낸다는 것이다. useEffect안에서 return을 하면 정리의 개념으...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.