One of the things I would like to follow is to stick to the best coding practices. One of them is DRY rule (Don't Repeat Yourself). I try to define some constants in proper model class and use them everywhere else in the code, so when it comes to a little change, it has to be done only in one place.
I have this class Hero_attributes
, which has several constants, e.g.:
class Hero_attributes
{
const ID = 'id';
const NAME = 'name';
const LEVEL = 'level';
const MAG_LEVEL = 'maglevel';
const VOCATION = 'vocation';
const GENDER = 'sex';
const SPEED = 'speed'
(...)
}
I have also made a custom config file tenkai_config.php
which is autoloaded. In the config array I'd like to use constants from Hero_attributes
class as keys, i.e.:
$config['vocations']['default'] = array(
'hero' => array(
Hero_attributes::LAST_LOGIN => 0,
Hero_attributes::LEVEL => 1,
Hero_attributes::MAG_LEVEL => 80,
Hero_attributes::RESIDENCE => 1,
Hero_attributes::POSITION_X => 73,
Hero_attributes::POSITION_Y => 181,
Hero_attributes::POSITION_Z => 6,
(...)
)
);
However, I get Fatal error: Class 'Hero_attributes' not found in C:\wamp_new\www\yourwodb\application\config\tenkai_config.php on line 29
message.
How can I use constants in config file?
If you only need to define constants. You can define them in ./application/config/constants.php
file they are available throughout the application