我想知道爲什麼Container::getInstance()
可以返回一個應用程序類。爲什麼Container :: getInstance()返回一個應用程序類
例如:
我想打一個哈希海峽,我想知道他們是如何工作的:
app('hash')->make('password');
,我發現在laravel的源代碼:
供應商/ laravel /framework/src/Illuminate/Foundation/helpers.php
if (! function_exists('app')) {
/**
* Get the available container instance.
*
* @param string $make
* @param array $parameters
* @return mixed|\Illuminate\Foundation\Application
*/
function app($make = null, $parameters = [])
{
if (is_null($make)) {
return Container::getInstance();
}
return Container::getInstance()->make($make, $parameters);
}
}
我不知道是什麼將返回,然後我dd(Container::getInstance())
,我知道它可以返回一個應用程序類,但我不知道他們是如何工作的。
謝謝你的幫助,我不知道我得到了它,因爲我無法找到容器類將返回全局實例,甚至當它只有'app()',我知道make函數或實例綁定函數可以幫助我解決這個問題,但它只有'app()',no' - > make'或' - > bind',並且在'public /'中找到'$ app = new Illuminate \ Foundation \ Application;'' index.php',它們之間有什麼不同?它是一樣的嗎?但他們是不同的語法,謝謝 –