Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
<?php namespace Illuminate\Foundation\Bootstrap; use Illuminate\Contracts\Foundation\App..
Decoded Output download
<?php
namespace Illuminate\Foundation\Bootstrap;
use Illuminate\Contracts\Foundation\Application;
use Illuminate\Support\ServiceProvider;
class RegisterProviders
{
/**
* The service providers that should be merged before registration.
*
* @var array
*/
protected static $merge = [];
/**
* The path to the bootstrap provider configuration file.
*
* @var string|null
*/
protected static $bootstrapProviderPath;
/**
* Bootstrap the given application.
*
* @param \Illuminate\Contracts\Foundation\Application $app
* @return void
*/
public function bootstrap(Application $app)
{
if (! $app->bound('config_loaded_from_cache') ||
$app->make('config_loaded_from_cache') === false) {
$this->mergeAdditionalProviders($app);
}
$app->registerConfiguredProviders();
}
/**
* Merge the additional configured providers into the configuration.
*
* @param \Illuminate\Foundation\Application $app
*/
protected function mergeAdditionalProviders(Application $app)
{
if (static::$bootstrapProviderPath &&
file_exists(static::$bootstrapProviderPath)) {
$packageProviders = require static::$bootstrapProviderPath;
foreach ($packageProviders as $index => $provider) {
if (! class_exists($provider)) {
unset($packageProviders[$index]);
}
}
}
$app->make('config')->set(
'app.providers',
array_merge(
$app->make('config')->get('app.providers') ?? ServiceProvider::defaultProviders()->toArray(),
static::$merge,
array_values($packageProviders ?? []),
),
);
}
/**
* Merge the given providers into the provider configuration before registration.
*
* @param array $providers
* @param string|null $bootstrapProviderPath
* @return void
*/
public static function merge(array $providers, ?string $bootstrapProviderPath = null)
{
static::$bootstrapProviderPath = $bootstrapProviderPath;
static::$merge = array_values(array_filter(array_unique(
array_merge(static::$merge, $providers)
)));
}
/**
* Flush the bootstrapper's global state.
*
* @return void
*/
public static function flushState()
{
static::$bootstrapProviderPath = null;
static::$merge = [];
}
}
?>
Did this file decode correctly?
Original Code
<?php
namespace Illuminate\Foundation\Bootstrap;
use Illuminate\Contracts\Foundation\Application;
use Illuminate\Support\ServiceProvider;
class RegisterProviders
{
/**
* The service providers that should be merged before registration.
*
* @var array
*/
protected static $merge = [];
/**
* The path to the bootstrap provider configuration file.
*
* @var string|null
*/
protected static $bootstrapProviderPath;
/**
* Bootstrap the given application.
*
* @param \Illuminate\Contracts\Foundation\Application $app
* @return void
*/
public function bootstrap(Application $app)
{
if (! $app->bound('config_loaded_from_cache') ||
$app->make('config_loaded_from_cache') === false) {
$this->mergeAdditionalProviders($app);
}
$app->registerConfiguredProviders();
}
/**
* Merge the additional configured providers into the configuration.
*
* @param \Illuminate\Foundation\Application $app
*/
protected function mergeAdditionalProviders(Application $app)
{
if (static::$bootstrapProviderPath &&
file_exists(static::$bootstrapProviderPath)) {
$packageProviders = require static::$bootstrapProviderPath;
foreach ($packageProviders as $index => $provider) {
if (! class_exists($provider)) {
unset($packageProviders[$index]);
}
}
}
$app->make('config')->set(
'app.providers',
array_merge(
$app->make('config')->get('app.providers') ?? ServiceProvider::defaultProviders()->toArray(),
static::$merge,
array_values($packageProviders ?? []),
),
);
}
/**
* Merge the given providers into the provider configuration before registration.
*
* @param array $providers
* @param string|null $bootstrapProviderPath
* @return void
*/
public static function merge(array $providers, ?string $bootstrapProviderPath = null)
{
static::$bootstrapProviderPath = $bootstrapProviderPath;
static::$merge = array_values(array_filter(array_unique(
array_merge(static::$merge, $providers)
)));
}
/**
* Flush the bootstrapper's global state.
*
* @return void
*/
public static function flushState()
{
static::$bootstrapProviderPath = null;
static::$merge = [];
}
}
Function Calls
None |
Stats
MD5 | 3432349016cbaf494b9c414cbd8e1d99 |
Eval Count | 0 |
Decode Time | 104 ms |