从Laravel5核心扩展到SqlServerConnection
我需要扩展从Laravel5核心扩展到SqlServerConnection,laravel,Laravel,我需要扩展illumb\Database\SqlServerConnection以覆盖一个函数。我已经尝试创建自己的DatabaseServiceProvider并使用了App\Libraries\Extensions\Connectors\ConnectionFactory,但是ConnectionFactory没有重载,只有DatabaseServiceProvider,ConnectionFactory::createConnection()方法做的第一件事是检查db.connection
illumb\Database\SqlServerConnection
以覆盖一个函数。我已经尝试创建自己的DatabaseServiceProvider并使用了App\Libraries\Extensions\Connectors\ConnectionFactory
,但是ConnectionFactory没有重载,只有DatabaseServiceProvider,ConnectionFactory::createConnection()
方法做的第一件事是检查db.connection.{$driver}
alias已绑定,如果已绑定,则返回该连接对象。如果未绑定,则返回基本连接对象(sqlsrv
驱动程序的illighted\Database\SqlServerConnection
)
因此,要使用自己的自定义连接,只需将db.connection.sqlsrv
别名绑定到自定义SqlServerConnection
类。你可以在包中看到一个例子(完全公开:我写的)
您可以在其中创建一个新的服务提供商,或者只需将该行添加到现有的AppServiceProvider
class AppServiceProvider extends ServiceProvider
{
public function register()
{
$this->app->bind('db.connection.sqlsrv', 'Your\Custom\SqlServerConnection');
}
}