CakePHPでグローバル変数を作成したいと思います。私のように私のapp_controller.phpで何かを定義する場合
var $varName
アクセスできます
$this->varName
どのコントローラーからでも、モデルからはアクセスできません。
モデルからアクセス可能なグローバル変数を作成するにはどうすればよいですか?
$ varNameの値は実行時までわからないので、bootstrap.phpはオプションではないと思います。
CakePHPの新しい Configure class を使用して、アプリケーションまたはランタイム固有の値を保存および取得できます。注意してください。このクラスを使用すると、クラスに何かを保存して、コードの他の部分で使用できます。
グローバル変数を保存するには、Configureクラスを使用します。例えば:
Configure :: write( 'Company.name'、 'Pizza、Inc.');
コードの任意の場所で後で変数を読み取るには、次のコードを使用します。
Configure :: read( 'Company.name'); // yields: 'Pizza、Inc.'
グローバル定数を保存するための推奨ファイルはapp/config/bootstrap.phpにあります
詳細については、以下を参照してください。
Configure class- Configure Class CakePhp 。またはブートストラップに関するセクション3.4.7
app/config/core.phpでグローバル変数を宣言できます
Configure::write('variable Name','Variable Value');
あなたはそのように印刷することができます:
Configure::read('Variable Name');
アプリのグローバル関数と変数はapp/config/bootstrap.phpで定義できます
詳細は http://book.cakephp.org/view/48/Bootstrapping-CakePHP を参照してください
App/config /ディレクトリのbootstrap.phpで定数を定義できます。これは、任意のコントローラーまたはビューでグローバルに使用できます。
Bootstrap.phpで定数を定義してみることができます(ケーキ3)
このファイルは、いくつかの一般的なブートストラップタスクに最適です。
便利な関数の定義。
定数の宣言。
キャッシュ構成の定義。
ロギング構成の定義。
カスタム屈折の読み込み。
設定ファイルを読み込んでいます。
ref https://book.cakephp.org/3.0/en/development/configuration.html#bootstrapping-cakephp