[英]How can I implement transactions with Laravel's Illuminate Database class?
[英]Running laravel illuminate database transactions outside of laravel
require dirname(dirname(__DIR__)) . '/vendor/autoload.php';
require dirname(__DIR__) . '/config.php';
use Illuminate\Database\Capsule\Manager as DB;
$dbc = new DB;
$dbc->addConnection(array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => DB_NAME,
'username' => DB_USER,
'password' => DB_PASSWORD,
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => ''
));
$dbc->setAsGlobal();
$dbc->bootEloquent();
$ dbc->的BeginTransaction();
給我這個錯誤,
PHP Fatal error: Call to undefined method Illuminate\\Database\\Capsule\\Manager::beginTransaction()
誰能為我提供一些有關如何在laravel之外使用膠囊和數據庫事務的幫助。 我找不到任何暗示不起作用的信息?
您需要獲取一個連接實例,以使用任何與數據庫相關的方法(包括beginTransaction
)。 實現它們的類是Illuminate\\Database\\Connection
。 這意味着您需要從管理器獲取連接實例並進行處理:
use Illuminate\Database\Capsule\Manager as DB;
$capsule = new DB;
$capsule->addConnection(array(
'driver' => 'mysql',
'host' => 'localhost',
'database' => DB_NAME,
'username' => DB_USER,
'password' => DB_PASSWORD,
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => ''
));
$capsule->setAsGlobal();
$capsule->bootEloquent();
$connection = $capsule->getConnection();
$connection->beginTransaction();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.