CakePHPで独自の定数値を定義する方法

こんにちは!ぐちです。

CakePHP

PHPのフレームワークであるCakePHPは便利な機能が盛りだくさんです。もちろん他にも良いフレームワークはたくさんありますが僕が一番慣れてるのがCakePHPなだけです。笑

今回はCakePHPで独自の設定値といいますか定数値を定義して使う方法をご紹介します。

設定値を定義する

app/Configディレクトリに独自のphpファイルを作りましょう。

<?php
$config['dir'] = '/path/to/your/forder';

設定値は$config変数に配列として格納されます。

設定値を読み込む

次に定義した設定値を読み込んでみましょう。

ControllerやModelなど使いたい場所で以下のように読み込みます。

<?php
App::uses('AppController', 'Controller');

class IndexController extends AppController {
    public function index() {
        Configure::load('hoge'); // 作成した設定値ファイル名を指定

        $path = Configure::read('dir'); // 定義した設定値名を指定して値を読み込む
    }
}

設定値を書き込む

動的に設定値を定義することもできます。

<?php
App::uses('AppController', 'Controller');

class IndexController extends AppController {
    public function index() {
        Configure::load('hoge'); // 作成した設定値ファイル名を指定

        Configure::write('file_prefix', 'img_file_default_'); // file_prefixをキーとして値を設定する
        $file_prefix = Configure::read('file_prefix'); // 定義した設定値名を指定して値を読み込む
    }
}

配列やファイルの保存なども可能

他にも設定値を配列で定義したり動的に定義したファイルを保存することも可能です。詳しくは本家サイトで調べてみてください。