CakePHP4で定数を定義する方法

cakephp4で定数定義をどうすべきなのかなと考えたときに、
公式に記載があったので、それを今回はご紹介します。

定数ファイルを作成

まずconfigにconst.phpファイルを作ります。名前は何でもよいです。
config/const.php

<?php

// defineの場合
define('OKOME', '白米');

// Configureの場合
return [
    'test1' => [
        'test2' => 'お米',
    ],
    'test3' => '激お米',
];

定数ファイルを読み込む

config/bootstrap.php

/*
 * Read configuration file and inject configuration into various
 * CakePHP classes.
 *
 * By default there is only one configuration file. It is often a good
 * idea to create multiple configuration files, and separate the configuration
 * that changes from configuration that does not. This makes deployment simpler.
 */
try {
    Configure::config('default', new PhpConfig());
    Configure::load('app', 'default', false);

    // 定数定義ファイルを追加
    Configure::load('const', 'default');

} catch (\Exception $e) {
    exit($e->getMessage() . "\n");
}

定数の呼び出し方

echo OKOME;
echo Configure::read(test1.test2);
echo Configure::read(test3);

結果

白米
お米
激お米

引数なしで呼ぶと配列として全部取得される

Configure::read()
CakePHP公式

特定の場所でConfigureを書きたい場合

Configure::write('test1', [
    [
        'test2' => 'お米',
    ],
    'test3' => '激お米',
]);

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です