この記事は2年以上前に書かれたものです。
情報が古い可能性があります。
情報が古い可能性があります。
fuel/app/classes/constant.php を作成
<?php /** * システム定数 */ namespace My\Constant { /** * サイト情報 */ class Site { /** @var string バージョン */ const VERSION = '1.0.0'; /** @var string サイト名 */ const NAME = 'WebCake'; } /** * メッセージ */ class Msg { /** @var string 訪問メッセージ */ const WELCOME = 'ようこそ'; } }
namespace を使用して、namespace 内にクラスを複数定義します。
※ namespace は PHP5.3 から使用可能。
fuel/app/bootstrap.php を編集
require APPPATH . ‘classes/constant.php’; を追記し、作成したファイルを読み込むように変更。
<?php // Bootstrap the framework DO NOT edit this require COREPATH.'bootstrap.php'; \Autoloader::add_classes(array( // Add classes you want to override here // Example: 'View' => APPPATH.'classes/view.php', )); // Register the autoloader \Autoloader::register(); /** * Your environment. Can be set to any of the following: * * Fuel::DEVELOPMENT * Fuel::TEST * Fuel::STAGING * Fuel::PRODUCTION */ \Fuel::$env = \Arr::get($_SERVER, 'FUEL_ENV', \Arr::get($_ENV, 'FUEL_ENV', \Fuel::DEVELOPMENT)); // Initialize the framework with the config file. \Fuel::init('config.php'); // 定数用の PHP ファイルをロードする require APPPATH . 'classes/constant.php';
追加したのはこの部分です。
// 定数用の PHP ファイルをロードする require APPPATH . 'classes/constant.php';
使い方
\My\Constant\Site::NAME といったように名前空間つきで指定し、使用する。
NetBeans などの IDE を使えば補完も出てくるし、Ctrl を押しながら定数にカーソルを当てると値もわかるので便利です。