Step3
extends AbstractStep
in package
インストール phase 3(データベース設定)。旧 setup/install.php の Install_Step_3。 DB 接続確認・DB 名/接頭辞の検証(W4)・DB 作成/変更を行い、接続情報を config.server.php に書き込む。
Table of Contents
Methods
- check() : StepResult
- 進行可否の判定。errors が空なら commit へ進める。副作用を持たない想定だが、一部フェーズ (DB 接続確認など)は判定に不可分な検査を含む(旧 validate 踏襲)。
- commit() : StepResult
- フェーズの主たる副作用(config 書き込み・DB 作成・ブログ作成・setup 撤去)の実行。 check が通り、かつ副作用リクエスト(do / 完了フェーズ)のときだけ呼ばれる。
- template() : string
- 描画に使う setup 専用 Twig テンプレート(`@setup/install/...twig`)。
- viewData() : array<string, mixed>
- 画面固有の表示データ(規約テキスト・テーマ選択肢など、操作結果に依存しないもの)。
- checkInput() : ToolErrors
- 送信フィールドのうち空のものを {フィールド名}_input エラーにする。 db_create(作成しない選択)と db_pass(空パス許容)は必須にしない。
- fileExists() : ToolErrors
- writeConfig() : ToolErrors
- config.server.php の define(KEY, ...) を書き換える。失敗時は config_write エラーを返す。
Methods
check()
進行可否の判定。errors が空なら commit へ進める。副作用を持たない想定だが、一部フェーズ (DB 接続確認など)は判定に不可分な検査を含む(旧 validate 踏襲)。
public
check(Field $post) : StepResult
Parameters
- $post : Field
Return values
StepResultcommit()
フェーズの主たる副作用(config 書き込み・DB 作成・ブログ作成・setup 撤去)の実行。 check が通り、かつ副作用リクエスト(do / 完了フェーズ)のときだけ呼ばれる。
public
commit(Field $post) : StepResult
Parameters
- $post : Field
Return values
StepResulttemplate()
描画に使う setup 専用 Twig テンプレート(`@setup/install/...twig`)。
public
template() : string
Return values
stringviewData()
画面固有の表示データ(規約テキスト・テーマ選択肢など、操作結果に依存しないもの)。
public
viewData(Field $post) : array<string, mixed>
Parameters
- $post : Field
Return values
array<string, mixed>checkInput()
送信フィールドのうち空のものを {フィールド名}_input エラーにする。 db_create(作成しない選択)と db_pass(空パス許容)は必須にしない。
protected
checkInput(Field $post) : ToolErrors
Parameters
- $post : Field
Return values
ToolErrorsfileExists()
protected
fileExists(string $name, string $path) : ToolErrors
Parameters
- $name : string
- $path : string
Return values
ToolErrorswriteConfig()
config.server.php の define(KEY, ...) を書き換える。失敗時は config_write エラーを返す。
protected
writeConfig(string $key, string $val) : ToolErrors
値の整形・置換は Services\ConfigServer\ConfigServerWriter に委譲する(メンテナンス側の
Domain 修正ツールと同一実装)。自前の preg_replace + str_replace 実装は、値に $ + 数字が
含まれると置換文字列がバックリファレンス($1 等)と解釈されて値が壊れる不具合があったため廃止。
Parameters
- $key : string
- $val : string