2

PSR-1は次のように述べています。

ファイルは、シンボル (クラス、関数、定数など) を宣言するか、副作用 (出力の生成、.ini 設定の変更など) を引き起こす必要がありますが、両方を行うべきではありません。

次のコードがあるとします。

// db.php file
class Db{
    // Some code here
}

$DB = new Db();

オブジェクトのインスタンス化は副作用の原因と見なされますか? つまり、上記のコードは PSR-1 に準拠していますか?

4

1 に答える 1

2

PSR-1によると

「副作用」には以下が含まれますが、これらに限定されません: [...] 外部サービスへの接続 [...]

より一般的には、次のように指定されます。

「副作用」というフレーズは、クラス、関数、定数の宣言に直接 関係のないロジックの実行を意味します

答えは、PSR-1 に準拠していないということです。

db.phpファイルをメイン ロジック ファイルに含める必要があります。次に、DB オブジェクトをインスタンス化します。

于 2016-02-19T08:54:56.230 に答える