Skip to content

Instantly share code, notes, and snippets.

@richnicholls404
Last active October 27, 2020 06:09
Show Gist options
  • Save richnicholls404/7449378 to your computer and use it in GitHub Desktop.
Save richnicholls404/7449378 to your computer and use it in GitHub Desktop.
Register Service Provider and assign a Facade alias programatically in Laravel (such as inside a package)
<?php namespace Cavedwellerrich\MyPackage;
use Illuminate\Support\ServiceProvider;
use Illuminate\Foundation\AliasLoader;
class MyPackageServiceProvider extends ServiceProvider {
//...
public function register()
{
//call sentry's service provider
$this->app->register('Cartalyst\Sentry\SentryServiceProvider');
//set up facade
AliasLoader::getInstance()->alias('Sentry', 'Cartalyst\Sentry\Facades\Laravel\Sentry');
//bind mypackage class
$this->app->bind('mypackage', function()
{
return new MyPackage;
});
}
//...
}
@dimti
Copy link

dimti commented Oct 27, 2020

Might that AliasLoader::getInstance()->alias('Sentry', 'Cartalyst\Sentry\Facades\Laravel\Sentry'); use as $this->app->alias('Sentry', 'Cartalyst\Sentry\Facades\Laravel\Sentry'); ?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment