Php Laravel:在连接时迁移
我的项目是一个多数据库项目。有些迁移文件必须在所有数据库上运行,有些迁移文件必须在一个或两个数据库上运行。我的问题是:如何调查连接名 所以如果我的迁移文件是Php Laravel:在连接时迁移,php,laravel,laravel-5,migration,laravel-5.5,Php,Laravel,Laravel 5,Migration,Laravel 5.5,我的项目是一个多数据库项目。有些迁移文件必须在所有数据库上运行,有些迁移文件必须在一个或两个数据库上运行。我的问题是:如何调查连接名 所以如果我的迁移文件是 <?php use Illuminate\Support\Facades\Schema; use Illuminate\Database\Migrations\Migration; class MigrationFile extends Migration { /** * Run the migrations.
<?php
use Illuminate\Support\Facades\Schema;
use Illuminate\Database\Migrations\Migration;
class MigrationFile extends Migration {
/**
* Run the migrations.
*
* @return void
*/
public function up(){
if($database == 'myseconddatabase') {
//code
}
}
/**
* Reverse the migrations.
*
* @return void
*/
public function down(){
Schema::dropIfExists('users');
}
}
我给出了命令php artisan migrate-database=myfirstdatabase
如何将值“myfirstdatabase”赋给$database变量?连接位于config/database.php上 无论您要做什么,都可以使用DB::connection来处理, get选项演示了这一点
$pvArray = DB::connection('myconn_mysql')->table('products')->select('id')->get();
使用受保护的$database='mysecondatabase';在启动功能之前。@PedroFaria99谢谢。如果我想为两个连接运行受保护的$database=['mysecondatabase','mythirddatabase']是有效的吗?我不确定,但我不会尝试这样做,这样每当你需要数据库连接时,你都需要指定数组键。所以不要乱动。谢谢,我知道,但问题是,如果我运行phpartisan migrate-database=xy命令,如何从迁移文件到达xy?