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' => '激お米',
]);