在配置文件中使用模型常量(CodeIgniter)

问题描述 投票:0回答:2

我想要遵循的事情之一是坚持最佳编码实践。其中之一是 DRY 规则(不要重复自己)。我尝试在适当的模型类中定义一些常量,并在代码中的其他地方使用它们,因此当需要进行一点更改时,只需在一个地方完成。

我有这个类

Hero_attributes
,它有几个常量,例如:


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'
    (...)
}

我还制作了一个自动加载的自定义配置文件

tenkai_config.php
。在配置数组中,我想使用
Hero_attributes
类中的常量作为键,即:


$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,
        (...)
    )
);

但是,我收到

 Fatal error: Class 'Hero_attributes' not found in C:\wamp_new\www\yourwodb\application\config\tenkai_config.php on line 29
消息。

如何在配置文件中使用常量?

php codeigniter codeigniter-2
2个回答
5
投票

如果你只需要定义常量。您可以在

./application/config/constants.php
文件中定义它们,它们在整个应用程序中都可用


0
投票

您需要自动加载 Hero_attributes 模型类。可能必须在自动加载配置文件之前执行此操作。

© www.soinside.com 2019 - 2024. All rights reserved.