// If an exception occurs when attempting to run a query, we'll format the error
// message to include the bindings with SQL, which will make this exception a
// lot more helpful to the developer instead of just the database's errors.
catch (Exception $e) {
throw new QueryException(
$query, $this->prepareBindings($bindings), $e
);
}
}
protected function tryAgainIfCausedByLostConnection(QueryException $e, $query, $bindings, Closure $callback)
{
if ($this->causedByLostConnection($e->getPrevious())) {
$this->reconnect();
return $this->runQueryCallback($query, $bindings, $callback);
}
throw $e;
}
if ($this->transactions >= 1) {
throw $e;
}
return $this->tryAgainIfCausedByLostConnection(
$e, $query, $bindings, $callback
);
}
/**
* Handle a query exception that occurred during query execution.
// to re-establish connection and re-run the query with a fresh connection.
try {
$result = $this->runQueryCallback($query, $bindings, $callback);
} catch (QueryException $e) {
$result = $this->handleQueryException(
$e, $query, $bindings, $callback
);
}
// Once we have run the query we will calculate the time that it took to run and
// then log the query, bindings, and execution time so we will report them on
$this->bindValues($statement, $this->prepareBindings($bindings));
$statement->execute();
return $statement->fetchAll();
});
}
/**
* Run a select statement against the database and returns a generator.
*
* @return array
*/
protected function runSelect()
{
return $this->connection->select(
$this->toSql(), $this->getBindings(), ! $this->useWritePdo
);
}
/**
* Paginate the given query into a simple paginator.
* @return \Illuminate\Support\Collection
*/
public function get($columns = ['*'])
{
return collect($this->onceWithColumns(Arr::wrap($columns), function () {
return $this->processor->processSelect($this, $this->runSelect());
}));
}
/**
* Run the query as a "select" statement against the connection.
if (is_null($original)) {
$this->columns = $columns;
}
$result = $callback();
$this->columns = $original;
return $result;
}
*/
public function get($columns = ['*'])
{
return collect($this->onceWithColumns(Arr::wrap($columns), function () {
return $this->processor->processSelect($this, $this->runSelect());
}));
}
/**
* Run the query as a "select" statement against the connection.
*
* @return \Illuminate\Database\Eloquent\Model[]|static[]
*/
public function getModels($columns = ['*'])
{
return $this->model->hydrate(
$this->query->get($columns)->all()
)->all();
}
/**
* Eager load the relationships for the models.
$builder = $this->applyScopes();
// If we actually found models we will also eager load any relationships that
// have been specified as needing to be eager loaded, which will solve the
// n+1 query issue for the developers to avoid running a lot of queries.
if (count($models = $builder->getModels($columns)) > 0) {
$models = $builder->eagerLoadRelations($models);
}
return $builder->getModel()->newCollection($models);
}
* @return \Illuminate\Database\Eloquent\Collection<int, static>
*/
public static function all($columns = ['*'])
{
return static::query()->get(
is_array($columns) ? $columns : func_get_args()
);
}
/**
* Begin querying a model with eager loading.
*/
public function boot()
{
// only use the Settings package if the Settings table is present in the database
//if (!\App::runningInConsole() && count(Schema::getColumnListing('settings'))) {
$settings = Setting::all();
foreach ($settings as $key => $setting)
{
Config::set('settings.'.$setting->key, $setting->value);
}
if (static::isCallableWithAtSign($callback) || $defaultMethod) {
return static::callClass($container, $callback, $parameters, $defaultMethod);
}
return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
return $callback(...array_values(static::getMethodDependencies($container, $callback, $parameters)));
});
}
/**
* Call a string reference to a class using Class@method syntax.
* @param mixed ...$args
* @return mixed
*/
public static function unwrapIfClosure($value, ...$args)
{
return $value instanceof Closure ? $value(...$args) : $value;
}
/**
* Get the class name of the given parameter's type, if possible.
*
if ($container->hasMethodBinding($method)) {
return $container->callMethodBinding($method, $callback[0]);
}
return Util::unwrapIfClosure($default);
}
/**
* Normalize the given callback into a Class@method string.
*
return static::callClass($container, $callback, $parameters, $defaultMethod);
}
return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
return $callback(...array_values(static::getMethodDependencies($container, $callback, $parameters)));
});
}
/**
* Call a string reference to a class using Class@method syntax.
*
$this->buildStack[] = $className;
$pushedToBuildStack = true;
}
$result = BoundMethod::call($this, $callback, $parameters, $defaultMethod);
if ($pushedToBuildStack) {
array_pop($this->buildStack);
}
protected function bootProvider(ServiceProvider $provider)
{
$provider->callBootingCallbacks();
if (method_exists($provider, 'boot')) {
$this->call([$provider, 'boot']);
}
$provider->callBootedCallbacks();
}
// for any listeners that need to do work after this initial booting gets
// finished. This is useful when ordering the boot-up processes we run.
$this->fireAppCallbacks($this->bootingCallbacks);
array_walk($this->serviceProviders, function ($p) {
$this->bootProvider($p);
});
$this->booted = true;
$this->fireAppCallbacks($this->bootedCallbacks);
// finished. This is useful when ordering the boot-up processes we run.
$this->fireAppCallbacks($this->bootingCallbacks);
array_walk($this->serviceProviders, function ($p) {
$this->bootProvider($p);
});
$this->booted = true;
$this->fireAppCallbacks($this->bootedCallbacks);
}
* @param \Illuminate\Contracts\Foundation\Application $app
* @return void
*/
public function bootstrap(Application $app)
{
$app->boot();
}
}
$this->hasBeenBootstrapped = true;
foreach ($bootstrappers as $bootstrapper) {
$this['events']->dispatch('bootstrapping: '.$bootstrapper, [$this]);
$this->make($bootstrapper)->bootstrap($this);
$this['events']->dispatch('bootstrapped: '.$bootstrapper, [$this]);
}
}
* @return void
*/
public function bootstrap()
{
if (! $this->app->hasBeenBootstrapped()) {
$this->app->bootstrapWith($this->bootstrappers());
}
}
/**
* Get the route dispatcher callback.
{
$this->app->instance('request', $request);
Facade::clearResolvedInstance('request');
$this->bootstrap();
return (new Pipeline($this->app))
->send($request)
->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
->then($this->dispatchToRouter());
$this->requestStartedAt = Carbon::now();
try {
$request->enableHttpMethodParameterOverride();
$response = $this->sendRequestThroughRouter($request);
} catch (Throwable $e) {
$this->reportException($e);
$response = $this->renderException($request, $e);
}
*/
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
$response->send();
$kernel->terminate($request, $response);
*/
final class Exception extends PDOException
{
public static function new(\PDOException $exception): self
{
return new self($exception);
}
}
try {
parent::__construct($dsn, (string) $user, (string) $password, (array) $options);
$this->setAttribute(PDO::ATTR_STATEMENT_CLASS, [Statement::class, []]);
$this->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $exception) {
throw Exception::new($exception);
}
}
/**
* {@inheritdoc}
* @return \PDO
*/
protected function createPdoConnection($dsn, $username, $password, $options)
{
if (class_exists(PDOConnection::class) && ! $this->isPersistentConnection($options)) {
return new PDOConnection($dsn, $username, $password, $options);
}
return new PDO($dsn, $username, $password, $options);
}
* @throws \Exception
*/
protected function tryAgainIfCausedByLostConnection(Throwable $e, $dsn, $username, $password, $options)
{
if ($this->causedByLostConnection($e)) {
return $this->createPdoConnection($dsn, $username, $password, $options);
}
throw $e;
}
return $this->createPdoConnection(
$dsn, $username, $password, $options
);
} catch (Exception $e) {
return $this->tryAgainIfCausedByLostConnection(
$e, $dsn, $username, $password, $options
);
}
}
/**
$options = $this->getOptions($config);
// We need to grab the PDO options that should be used while making the brand
// new connection instance. The PDO options control various aspects of the
// connection's behavior, and some might be specified by the developers.
$connection = $this->createConnection($dsn, $config, $options);
if (! empty($config['database'])) {
$connection->exec("use `{$config['database']}`;");
}
return function () use ($config) {
foreach (Arr::shuffle($this->parseHosts($config)) as $host) {
$config['host'] = $host;
try {
return $this->createConnector($config)->connect($config);
} catch (PDOException $e) {
continue;
}
}
* @return \PDO
*/
public function getPdo()
{
if ($this->pdo instanceof Closure) {
return $this->pdo = call_user_func($this->pdo);
}
return $this->pdo;
}
if ($this->readPdo instanceof Closure) {
return $this->readPdo = call_user_func($this->readPdo);
}
return $this->readPdo ?: $this->getPdo();
}
/**
* Get the current read PDO connection parameter without executing any reconnect logic.
*
* @param bool $useReadPdo
* @return \PDO
*/
protected function getPdoForSelect($useReadPdo = true)
{
return $useReadPdo ? $this->getReadPdo() : $this->getPdo();
}
/**
* Run an insert statement against the database.
*
// For select statements, we'll simply execute the query and return an array
// of the database result set. Each element in the array will be a single
// row from the database table, and will either be an array or objects.
$statement = $this->prepared(
$this->getPdoForSelect($useReadPdo)->prepare($query)
);
$this->bindValues($statement, $this->prepareBindings($bindings));
$statement->execute();
{
// To execute the statement, we'll simply call the callback, which will actually
// run the SQL against the PDO connection. Then we can calculate the time it
// took to execute and log the query SQL, bindings and time in our memory.
try {
return $callback($query, $bindings);
}
// If an exception occurs when attempting to run a query, we'll format the error
// message to include the bindings with SQL, which will make this exception a
// lot more helpful to the developer instead of just the database's errors.
protected function tryAgainIfCausedByLostConnection(QueryException $e, $query, $bindings, Closure $callback)
{
if ($this->causedByLostConnection($e->getPrevious())) {
$this->reconnect();
return $this->runQueryCallback($query, $bindings, $callback);
}
throw $e;
}
if ($this->transactions >= 1) {
throw $e;
}
return $this->tryAgainIfCausedByLostConnection(
$e, $query, $bindings, $callback
);
}
/**
* Handle a query exception that occurred during query execution.
// to re-establish connection and re-run the query with a fresh connection.
try {
$result = $this->runQueryCallback($query, $bindings, $callback);
} catch (QueryException $e) {
$result = $this->handleQueryException(
$e, $query, $bindings, $callback
);
}
// Once we have run the query we will calculate the time that it took to run and
// then log the query, bindings, and execution time so we will report them on
$this->bindValues($statement, $this->prepareBindings($bindings));
$statement->execute();
return $statement->fetchAll();
});
}
/**
* Run a select statement against the database and returns a generator.
*
* @return array
*/
protected function runSelect()
{
return $this->connection->select(
$this->toSql(), $this->getBindings(), ! $this->useWritePdo
);
}
/**
* Paginate the given query into a simple paginator.
* @return \Illuminate\Support\Collection
*/
public function get($columns = ['*'])
{
return collect($this->onceWithColumns(Arr::wrap($columns), function () {
return $this->processor->processSelect($this, $this->runSelect());
}));
}
/**
* Run the query as a "select" statement against the connection.
if (is_null($original)) {
$this->columns = $columns;
}
$result = $callback();
$this->columns = $original;
return $result;
}
*/
public function get($columns = ['*'])
{
return collect($this->onceWithColumns(Arr::wrap($columns), function () {
return $this->processor->processSelect($this, $this->runSelect());
}));
}
/**
* Run the query as a "select" statement against the connection.
*
* @return \Illuminate\Database\Eloquent\Model[]|static[]
*/
public function getModels($columns = ['*'])
{
return $this->model->hydrate(
$this->query->get($columns)->all()
)->all();
}
/**
* Eager load the relationships for the models.
$builder = $this->applyScopes();
// If we actually found models we will also eager load any relationships that
// have been specified as needing to be eager loaded, which will solve the
// n+1 query issue for the developers to avoid running a lot of queries.
if (count($models = $builder->getModels($columns)) > 0) {
$models = $builder->eagerLoadRelations($models);
}
return $builder->getModel()->newCollection($models);
}
* @return \Illuminate\Database\Eloquent\Collection<int, static>
*/
public static function all($columns = ['*'])
{
return static::query()->get(
is_array($columns) ? $columns : func_get_args()
);
}
/**
* Begin querying a model with eager loading.
*/
public function boot()
{
// only use the Settings package if the Settings table is present in the database
//if (!\App::runningInConsole() && count(Schema::getColumnListing('settings'))) {
$settings = Setting::all();
foreach ($settings as $key => $setting)
{
Config::set('settings.'.$setting->key, $setting->value);
}
if (static::isCallableWithAtSign($callback) || $defaultMethod) {
return static::callClass($container, $callback, $parameters, $defaultMethod);
}
return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
return $callback(...array_values(static::getMethodDependencies($container, $callback, $parameters)));
});
}
/**
* Call a string reference to a class using Class@method syntax.
* @param mixed ...$args
* @return mixed
*/
public static function unwrapIfClosure($value, ...$args)
{
return $value instanceof Closure ? $value(...$args) : $value;
}
/**
* Get the class name of the given parameter's type, if possible.
*
if ($container->hasMethodBinding($method)) {
return $container->callMethodBinding($method, $callback[0]);
}
return Util::unwrapIfClosure($default);
}
/**
* Normalize the given callback into a Class@method string.
*
return static::callClass($container, $callback, $parameters, $defaultMethod);
}
return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
return $callback(...array_values(static::getMethodDependencies($container, $callback, $parameters)));
});
}
/**
* Call a string reference to a class using Class@method syntax.
*
$this->buildStack[] = $className;
$pushedToBuildStack = true;
}
$result = BoundMethod::call($this, $callback, $parameters, $defaultMethod);
if ($pushedToBuildStack) {
array_pop($this->buildStack);
}
protected function bootProvider(ServiceProvider $provider)
{
$provider->callBootingCallbacks();
if (method_exists($provider, 'boot')) {
$this->call([$provider, 'boot']);
}
$provider->callBootedCallbacks();
}
// for any listeners that need to do work after this initial booting gets
// finished. This is useful when ordering the boot-up processes we run.
$this->fireAppCallbacks($this->bootingCallbacks);
array_walk($this->serviceProviders, function ($p) {
$this->bootProvider($p);
});
$this->booted = true;
$this->fireAppCallbacks($this->bootedCallbacks);
// finished. This is useful when ordering the boot-up processes we run.
$this->fireAppCallbacks($this->bootingCallbacks);
array_walk($this->serviceProviders, function ($p) {
$this->bootProvider($p);
});
$this->booted = true;
$this->fireAppCallbacks($this->bootedCallbacks);
}
* @param \Illuminate\Contracts\Foundation\Application $app
* @return void
*/
public function bootstrap(Application $app)
{
$app->boot();
}
}
$this->hasBeenBootstrapped = true;
foreach ($bootstrappers as $bootstrapper) {
$this['events']->dispatch('bootstrapping: '.$bootstrapper, [$this]);
$this->make($bootstrapper)->bootstrap($this);
$this['events']->dispatch('bootstrapped: '.$bootstrapper, [$this]);
}
}
* @return void
*/
public function bootstrap()
{
if (! $this->app->hasBeenBootstrapped()) {
$this->app->bootstrapWith($this->bootstrappers());
}
}
/**
* Get the route dispatcher callback.
{
$this->app->instance('request', $request);
Facade::clearResolvedInstance('request');
$this->bootstrap();
return (new Pipeline($this->app))
->send($request)
->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
->then($this->dispatchToRouter());
$this->requestStartedAt = Carbon::now();
try {
$request->enableHttpMethodParameterOverride();
$response = $this->sendRequestThroughRouter($request);
} catch (Throwable $e) {
$this->reportException($e);
$response = $this->renderException($request, $e);
}
*/
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
$response->send();
$kernel->terminate($request, $response);
* @throws PDOException In case of an error.
*/
public function __construct($dsn, $user = null, $password = null, ?array $options = null)
{
try {
parent::__construct($dsn, (string) $user, (string) $password, (array) $options);
$this->setAttribute(PDO::ATTR_STATEMENT_CLASS, [Statement::class, []]);
$this->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $exception) {
throw Exception::new($exception);
}
* @throws PDOException In case of an error.
*/
public function __construct($dsn, $user = null, $password = null, ?array $options = null)
{
try {
parent::__construct($dsn, (string) $user, (string) $password, (array) $options);
$this->setAttribute(PDO::ATTR_STATEMENT_CLASS, [Statement::class, []]);
$this->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $exception) {
throw Exception::new($exception);
}
* @return \PDO
*/
protected function createPdoConnection($dsn, $username, $password, $options)
{
if (class_exists(PDOConnection::class) && ! $this->isPersistentConnection($options)) {
return new PDOConnection($dsn, $username, $password, $options);
}
return new PDO($dsn, $username, $password, $options);
}
* @throws \Exception
*/
protected function tryAgainIfCausedByLostConnection(Throwable $e, $dsn, $username, $password, $options)
{
if ($this->causedByLostConnection($e)) {
return $this->createPdoConnection($dsn, $username, $password, $options);
}
throw $e;
}
return $this->createPdoConnection(
$dsn, $username, $password, $options
);
} catch (Exception $e) {
return $this->tryAgainIfCausedByLostConnection(
$e, $dsn, $username, $password, $options
);
}
}
/**
$options = $this->getOptions($config);
// We need to grab the PDO options that should be used while making the brand
// new connection instance. The PDO options control various aspects of the
// connection's behavior, and some might be specified by the developers.
$connection = $this->createConnection($dsn, $config, $options);
if (! empty($config['database'])) {
$connection->exec("use `{$config['database']}`;");
}
return function () use ($config) {
foreach (Arr::shuffle($this->parseHosts($config)) as $host) {
$config['host'] = $host;
try {
return $this->createConnector($config)->connect($config);
} catch (PDOException $e) {
continue;
}
}
* @return \PDO
*/
public function getPdo()
{
if ($this->pdo instanceof Closure) {
return $this->pdo = call_user_func($this->pdo);
}
return $this->pdo;
}
if ($this->readPdo instanceof Closure) {
return $this->readPdo = call_user_func($this->readPdo);
}
return $this->readPdo ?: $this->getPdo();
}
/**
* Get the current read PDO connection parameter without executing any reconnect logic.
*
* @param bool $useReadPdo
* @return \PDO
*/
protected function getPdoForSelect($useReadPdo = true)
{
return $useReadPdo ? $this->getReadPdo() : $this->getPdo();
}
/**
* Run an insert statement against the database.
*
// For select statements, we'll simply execute the query and return an array
// of the database result set. Each element in the array will be a single
// row from the database table, and will either be an array or objects.
$statement = $this->prepared(
$this->getPdoForSelect($useReadPdo)->prepare($query)
);
$this->bindValues($statement, $this->prepareBindings($bindings));
$statement->execute();
{
// To execute the statement, we'll simply call the callback, which will actually
// run the SQL against the PDO connection. Then we can calculate the time it
// took to execute and log the query SQL, bindings and time in our memory.
try {
return $callback($query, $bindings);
}
// If an exception occurs when attempting to run a query, we'll format the error
// message to include the bindings with SQL, which will make this exception a
// lot more helpful to the developer instead of just the database's errors.
protected function tryAgainIfCausedByLostConnection(QueryException $e, $query, $bindings, Closure $callback)
{
if ($this->causedByLostConnection($e->getPrevious())) {
$this->reconnect();
return $this->runQueryCallback($query, $bindings, $callback);
}
throw $e;
}
if ($this->transactions >= 1) {
throw $e;
}
return $this->tryAgainIfCausedByLostConnection(
$e, $query, $bindings, $callback
);
}
/**
* Handle a query exception that occurred during query execution.
// to re-establish connection and re-run the query with a fresh connection.
try {
$result = $this->runQueryCallback($query, $bindings, $callback);
} catch (QueryException $e) {
$result = $this->handleQueryException(
$e, $query, $bindings, $callback
);
}
// Once we have run the query we will calculate the time that it took to run and
// then log the query, bindings, and execution time so we will report them on
$this->bindValues($statement, $this->prepareBindings($bindings));
$statement->execute();
return $statement->fetchAll();
});
}
/**
* Run a select statement against the database and returns a generator.
*
* @return array
*/
protected function runSelect()
{
return $this->connection->select(
$this->toSql(), $this->getBindings(), ! $this->useWritePdo
);
}
/**
* Paginate the given query into a simple paginator.
* @return \Illuminate\Support\Collection
*/
public function get($columns = ['*'])
{
return collect($this->onceWithColumns(Arr::wrap($columns), function () {
return $this->processor->processSelect($this, $this->runSelect());
}));
}
/**
* Run the query as a "select" statement against the connection.
if (is_null($original)) {
$this->columns = $columns;
}
$result = $callback();
$this->columns = $original;
return $result;
}
*/
public function get($columns = ['*'])
{
return collect($this->onceWithColumns(Arr::wrap($columns), function () {
return $this->processor->processSelect($this, $this->runSelect());
}));
}
/**
* Run the query as a "select" statement against the connection.
*
* @return \Illuminate\Database\Eloquent\Model[]|static[]
*/
public function getModels($columns = ['*'])
{
return $this->model->hydrate(
$this->query->get($columns)->all()
)->all();
}
/**
* Eager load the relationships for the models.
$builder = $this->applyScopes();
// If we actually found models we will also eager load any relationships that
// have been specified as needing to be eager loaded, which will solve the
// n+1 query issue for the developers to avoid running a lot of queries.
if (count($models = $builder->getModels($columns)) > 0) {
$models = $builder->eagerLoadRelations($models);
}
return $builder->getModel()->newCollection($models);
}
* @return \Illuminate\Database\Eloquent\Collection<int, static>
*/
public static function all($columns = ['*'])
{
return static::query()->get(
is_array($columns) ? $columns : func_get_args()
);
}
/**
* Begin querying a model with eager loading.
*/
public function boot()
{
// only use the Settings package if the Settings table is present in the database
//if (!\App::runningInConsole() && count(Schema::getColumnListing('settings'))) {
$settings = Setting::all();
foreach ($settings as $key => $setting)
{
Config::set('settings.'.$setting->key, $setting->value);
}
if (static::isCallableWithAtSign($callback) || $defaultMethod) {
return static::callClass($container, $callback, $parameters, $defaultMethod);
}
return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
return $callback(...array_values(static::getMethodDependencies($container, $callback, $parameters)));
});
}
/**
* Call a string reference to a class using Class@method syntax.
* @param mixed ...$args
* @return mixed
*/
public static function unwrapIfClosure($value, ...$args)
{
return $value instanceof Closure ? $value(...$args) : $value;
}
/**
* Get the class name of the given parameter's type, if possible.
*
if ($container->hasMethodBinding($method)) {
return $container->callMethodBinding($method, $callback[0]);
}
return Util::unwrapIfClosure($default);
}
/**
* Normalize the given callback into a Class@method string.
*
return static::callClass($container, $callback, $parameters, $defaultMethod);
}
return static::callBoundMethod($container, $callback, function () use ($container, $callback, $parameters) {
return $callback(...array_values(static::getMethodDependencies($container, $callback, $parameters)));
});
}
/**
* Call a string reference to a class using Class@method syntax.
*
$this->buildStack[] = $className;
$pushedToBuildStack = true;
}
$result = BoundMethod::call($this, $callback, $parameters, $defaultMethod);
if ($pushedToBuildStack) {
array_pop($this->buildStack);
}
protected function bootProvider(ServiceProvider $provider)
{
$provider->callBootingCallbacks();
if (method_exists($provider, 'boot')) {
$this->call([$provider, 'boot']);
}
$provider->callBootedCallbacks();
}
// for any listeners that need to do work after this initial booting gets
// finished. This is useful when ordering the boot-up processes we run.
$this->fireAppCallbacks($this->bootingCallbacks);
array_walk($this->serviceProviders, function ($p) {
$this->bootProvider($p);
});
$this->booted = true;
$this->fireAppCallbacks($this->bootedCallbacks);
// finished. This is useful when ordering the boot-up processes we run.
$this->fireAppCallbacks($this->bootingCallbacks);
array_walk($this->serviceProviders, function ($p) {
$this->bootProvider($p);
});
$this->booted = true;
$this->fireAppCallbacks($this->bootedCallbacks);
}
* @param \Illuminate\Contracts\Foundation\Application $app
* @return void
*/
public function bootstrap(Application $app)
{
$app->boot();
}
}
$this->hasBeenBootstrapped = true;
foreach ($bootstrappers as $bootstrapper) {
$this['events']->dispatch('bootstrapping: '.$bootstrapper, [$this]);
$this->make($bootstrapper)->bootstrap($this);
$this['events']->dispatch('bootstrapped: '.$bootstrapper, [$this]);
}
}
* @return void
*/
public function bootstrap()
{
if (! $this->app->hasBeenBootstrapped()) {
$this->app->bootstrapWith($this->bootstrappers());
}
}
/**
* Get the route dispatcher callback.
{
$this->app->instance('request', $request);
Facade::clearResolvedInstance('request');
$this->bootstrap();
return (new Pipeline($this->app))
->send($request)
->through($this->app->shouldSkipMiddleware() ? [] : $this->middleware)
->then($this->dispatchToRouter());
$this->requestStartedAt = Carbon::now();
try {
$request->enableHttpMethodParameterOverride();
$response = $this->sendRequestThroughRouter($request);
} catch (Throwable $e) {
$this->reportException($e);
$response = $this->renderException($request, $e);
}
*/
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
$response = $kernel->handle(
$request = Illuminate\Http\Request::capture()
);
$response->send();
$kernel->terminate($request, $response);
[3/3]
QueryException
|
---|
Illuminate\Database\QueryException: SQLSTATE[HY000] [2002] Connection refused (SQL: select * from `settings`) at /var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:760 at Illuminate\Database\Connection->runQueryCallback() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:899) at Illuminate\Database\Connection->tryAgainIfCausedByLostConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:879) at Illuminate\Database\Connection->handleQueryException() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:723) at Illuminate\Database\Connection->run() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:422) at Illuminate\Database\Connection->select() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2656) at Illuminate\Database\Query\Builder->runSelect() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2644) at Illuminate\Database\Query\Builder->Illuminate\Database\Query\{closure}() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:3180) at Illuminate\Database\Query\Builder->onceWithColumns() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2645) at Illuminate\Database\Query\Builder->get() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:710) at Illuminate\Database\Eloquent\Builder->getModels() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:694) at Illuminate\Database\Eloquent\Builder->get() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:674) at Illuminate\Database\Eloquent\Model::all() (/var/www/zapdv.ru/public_html/app/Providers/SettingServiceProvider.php:41) at App\Providers\SettingServiceProvider->boot() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:36) at Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/Util.php:41) at Illuminate\Container\Util::unwrapIfClosure() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:93) at Illuminate\Container\BoundMethod::callBoundMethod() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:37) at Illuminate\Container\BoundMethod::call() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/Container.php:661) at Illuminate\Container\Container->call() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:929) at Illuminate\Foundation\Application->bootProvider() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:910) at Illuminate\Foundation\Application->Illuminate\Foundation\{closure}() at array_walk() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:911) at Illuminate\Foundation\Application->boot() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php:17) at Illuminate\Foundation\Bootstrap\BootProviders->bootstrap() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:242) at Illuminate\Foundation\Application->bootstrapWith() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176) at Illuminate\Foundation\Http\Kernel->bootstrap() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:160) at Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:134) at Illuminate\Foundation\Http\Kernel->handle() (/var/www/zapdv.ru/public_html/public/index.php:55) |
[2/3]
Exception
|
---|
Doctrine\DBAL\Driver\PDO\Exception: SQLSTATE[HY000] [2002] Connection refused at /var/www/zapdv.ru/public_html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDO/Exception.php:18 at Doctrine\DBAL\Driver\PDO\Exception::new() (/var/www/zapdv.ru/public_html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:44) at Doctrine\DBAL\Driver\PDOConnection->__construct() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:67) at Illuminate\Database\Connectors\Connector->createPdoConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:100) at Illuminate\Database\Connectors\Connector->tryAgainIfCausedByLostConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:50) at Illuminate\Database\Connectors\Connector->createConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php:24) at Illuminate\Database\Connectors\MySqlConnector->connect() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php:184) at Illuminate\Database\Connectors\ConnectionFactory->Illuminate\Database\Connectors\{closure}() at call_user_func() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:1181) at Illuminate\Database\Connection->getPdo() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:1217) at Illuminate\Database\Connection->getReadPdo() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:486) at Illuminate\Database\Connection->getPdoForSelect() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:414) at Illuminate\Database\Connection->Illuminate\Database\{closure}() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:753) at Illuminate\Database\Connection->runQueryCallback() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:899) at Illuminate\Database\Connection->tryAgainIfCausedByLostConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:879) at Illuminate\Database\Connection->handleQueryException() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:723) at Illuminate\Database\Connection->run() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:422) at Illuminate\Database\Connection->select() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2656) at Illuminate\Database\Query\Builder->runSelect() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2644) at Illuminate\Database\Query\Builder->Illuminate\Database\Query\{closure}() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:3180) at Illuminate\Database\Query\Builder->onceWithColumns() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2645) at Illuminate\Database\Query\Builder->get() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:710) at Illuminate\Database\Eloquent\Builder->getModels() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:694) at Illuminate\Database\Eloquent\Builder->get() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:674) at Illuminate\Database\Eloquent\Model::all() (/var/www/zapdv.ru/public_html/app/Providers/SettingServiceProvider.php:41) at App\Providers\SettingServiceProvider->boot() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:36) at Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/Util.php:41) at Illuminate\Container\Util::unwrapIfClosure() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:93) at Illuminate\Container\BoundMethod::callBoundMethod() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:37) at Illuminate\Container\BoundMethod::call() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/Container.php:661) at Illuminate\Container\Container->call() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:929) at Illuminate\Foundation\Application->bootProvider() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:910) at Illuminate\Foundation\Application->Illuminate\Foundation\{closure}() at array_walk() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:911) at Illuminate\Foundation\Application->boot() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php:17) at Illuminate\Foundation\Bootstrap\BootProviders->bootstrap() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:242) at Illuminate\Foundation\Application->bootstrapWith() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176) at Illuminate\Foundation\Http\Kernel->bootstrap() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:160) at Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:134) at Illuminate\Foundation\Http\Kernel->handle() (/var/www/zapdv.ru/public_html/public/index.php:55) |
[1/3]
PDOException
|
---|
PDOException: SQLSTATE[HY000] [2002] Connection refused at /var/www/zapdv.ru/public_html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:40 at PDO->__construct() (/var/www/zapdv.ru/public_html/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOConnection.php:40) at Doctrine\DBAL\Driver\PDOConnection->__construct() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:67) at Illuminate\Database\Connectors\Connector->createPdoConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:100) at Illuminate\Database\Connectors\Connector->tryAgainIfCausedByLostConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/Connector.php:50) at Illuminate\Database\Connectors\Connector->createConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/MySqlConnector.php:24) at Illuminate\Database\Connectors\MySqlConnector->connect() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connectors/ConnectionFactory.php:184) at Illuminate\Database\Connectors\ConnectionFactory->Illuminate\Database\Connectors\{closure}() at call_user_func() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:1181) at Illuminate\Database\Connection->getPdo() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:1217) at Illuminate\Database\Connection->getReadPdo() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:486) at Illuminate\Database\Connection->getPdoForSelect() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:414) at Illuminate\Database\Connection->Illuminate\Database\{closure}() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:753) at Illuminate\Database\Connection->runQueryCallback() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:899) at Illuminate\Database\Connection->tryAgainIfCausedByLostConnection() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:879) at Illuminate\Database\Connection->handleQueryException() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:723) at Illuminate\Database\Connection->run() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Connection.php:422) at Illuminate\Database\Connection->select() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2656) at Illuminate\Database\Query\Builder->runSelect() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2644) at Illuminate\Database\Query\Builder->Illuminate\Database\Query\{closure}() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:3180) at Illuminate\Database\Query\Builder->onceWithColumns() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Query/Builder.php:2645) at Illuminate\Database\Query\Builder->get() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:710) at Illuminate\Database\Eloquent\Builder->getModels() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Builder.php:694) at Illuminate\Database\Eloquent\Builder->get() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Database/Eloquent/Model.php:674) at Illuminate\Database\Eloquent\Model::all() (/var/www/zapdv.ru/public_html/app/Providers/SettingServiceProvider.php:41) at App\Providers\SettingServiceProvider->boot() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:36) at Illuminate\Container\BoundMethod::Illuminate\Container\{closure}() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/Util.php:41) at Illuminate\Container\Util::unwrapIfClosure() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:93) at Illuminate\Container\BoundMethod::callBoundMethod() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/BoundMethod.php:37) at Illuminate\Container\BoundMethod::call() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Container/Container.php:661) at Illuminate\Container\Container->call() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:929) at Illuminate\Foundation\Application->bootProvider() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:910) at Illuminate\Foundation\Application->Illuminate\Foundation\{closure}() at array_walk() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:911) at Illuminate\Foundation\Application->boot() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Bootstrap/BootProviders.php:17) at Illuminate\Foundation\Bootstrap\BootProviders->bootstrap() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:242) at Illuminate\Foundation\Application->bootstrapWith() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:176) at Illuminate\Foundation\Http\Kernel->bootstrap() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:160) at Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter() (/var/www/zapdv.ru/public_html/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php:134) at Illuminate\Foundation\Http\Kernel->handle() (/var/www/zapdv.ru/public_html/public/index.php:55) |