本文整理汇总了PHP中Illuminate\Contracts\Foundation\Application::resolved方法的典型用法代码示例。如果您正苦于以下问题:PHP Application::resolved方法的具体用法?PHP Application::resolved怎么用?PHP Application::resolved使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Illuminate\Contracts\Foundation\Application
的用法示例。
在下文中一共展示了Application::resolved方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: hasBeenFlushed
/**
* Check if the given application instance has been flushed
*
* @param Application $application The Laravel application instance
*
* @return bool True if the given application instance has been flushed, false if not
*/
public function hasBeenFlushed(Application $application)
{
// The problem that we are facing here, is that there is no way
// of telling if the 'flush' method has been invoked, by just asking
// directly. The only possible way, is to assume that if there are
// no loaded service providers, then the application must have been
// flushed or not yet booted. However, while the concrete implementation
// does provide a method called 'getLoadedProviders', the Application-interface
// that this method accepts, doesn't know about such a method at all!
// In addition, if by some chance a very customised application is running,
// there might not be any service providers attached to it.
//
// Nevertheless, we have to assume that;
// a) If no core application has been resolved, the application has been flushed
// b) If no core container has been resolved, the application has been flushed
// @see \Illuminate\Foundation\Application::__construct
//
// The only way that we can obtain this information, is to rely on the 'resolved'
// method, for telling us if certain instances have been resolved...
//
// In this case, we are looking for two special cases - the core application and the
// core container of the application. If these are present / available, it should mean
// that the application is still running and has yet not been flushed
return !($application->resolved('app') && $application->resolved('Illuminate\\Container\\Container'));
}
示例2: setThemeResolver
/**
* Boot theme resolver.
*
* @param \Illuminate\Contracts\Foundation\Application $app
* @param \Orchestra\Contracts\Theme\Theme $theme
*
* @return void
*/
protected function setThemeResolver(Application $app, Theme $theme)
{
// The theme is only booted when the first view is being composed.
// This would prevent multiple theme being booted in the same
// request.
if ($app->resolved('view')) {
$theme->resolving();
} else {
$app->resolving('view', function () use($theme) {
$theme->resolving();
});
}
}