2020/03/30 | フレームワーク
Schema::getFacadeAccessor() の static::$app[‘db’]->connection() の戻り値が接続を確立した Connection インスタンスであるというところまでは読みました。続きを見てみましょう。 Illuminate/Support/Facades/Schema::getFacadeAccessor() /** * Get a schema builder instance for a connection. * * @param string|null...
2020/03/30 | フレームワーク
Larabelの artisan の make:migration で生成されたマイグレーションファイルは何をしているのかソースコードを読んでみます。 バージョンは 7.2.0 のものです。 【前提】 私は Larabel のクイックスタートを数回読んだくらいで全く利用経験が無いため、使い方を知るためにソースコードを読むことにしました。この記事の対象は PHP...
2020/03/30 | フレームワーク
$app[‘db’] が生成される時の流れをもう一度見てみましょう。コマンドラインから artisan コマンドが叩かれると、Illumination/Foundation/Console/Kernel::$bootstrappers[] 配列に登録されたサービスがアプリケーションコンテナで読み込まれます。この中に Illumination/Foundation/Bootstrap/RegisterProviders が含まれています。この bootstrap() メソッドには...
2020/03/30 | フレームワーク
Larabelアプリケーションの初期化の流れ artisan が叩かれると、PROJECT_ROOT/bootstrap/app.php が呼び出されます。その最初で Illuminate\Foundation\Application が生成されます。 PROJECT_ROOT/bootstrap/app.php 抜粋 $app = new Illuminate\Foundation\Application( $_ENV[‘APP_BASE_PATH’] ?? dirname(__DIR__) );...
2020/03/30 | フレームワーク
$app[‘db’]について Schema::getFacadeAccessor() から返される戻り値 static::$app[‘db’]->connection()->getSchemaBuilder() を見ていきましょう。 順序が逆ですが、マイグレーションファイルを利用する時、artisan の migrate を利用します。artisan...
2020/03/29 | フレームワーク
PROJECT_ROOT/config/app.php の providers には、 Illuminate\Database\DatabaseServiceProvider が記述されています。このプロバイダーが初期化時に読み込まれ、register() メソッドがコールされます。 Illuminate\Database\DatabaseServiceProvider::register() | 関連メソッド /** * Register the service provider. * * @return void */...