8

我已将全局常量存储在 config->constants.php 中,但它会产生问题并抛出错误我已经这样定义它,如何在控制器中调用它, 代码

define('SuperAdmin','1');
define('Admin','2');
define('CityAdmin' '3');
define('SupportAdmin','4');
define('RestaurantUser','5');
define('FrontUser','6');
define('Other','7');
4

5 回答 5

11

您不需要在任何地方加载常量,它们会由 CI 本身自动加载,这就是它们的重点。要使用它们,请记住它们是常量,而不是您习惯使用 $ 的变量。因此,在您定义它们之后,您可以在应用程序中的任何位置使用:

if($user->userType == SuperAdmin)
{
   do something here;
}

请注意,SuperAdmin 前面没有 $ 并且不在引号内。同样,在常量文件中定义它们之后,您无需执行任何其他操作即可开始在应用程序中使用它们。

于 2012-12-21T13:45:34.037 回答
5

首先使用必须以大写字母定义常量的约定。喜欢

define('SUPERADMIN','1');
define('ADMIN','2');
define('CITYADMIN' '3');

您可以使用控制器中的常量,例如

if($user->userType == SUPERADMIN)
{
   //Your code ...
}

如果你想在 codeigniter 中使用 html 文件/视图文件,你可以在 html 文件中使用常量,比如

<?php echo SUPERADMIN; ?>

您可以通过这种方式访问​​常量。

于 2016-02-09T09:51:20.210 回答
2

始终遵循仅大写字母的常量命名约定。如果您在 application/config/constants.php 文件中声明了常量,那么它将在您的应用程序中可用。

于 2016-05-24T12:38:45.663 回答
0

这是在 中定义全局常量的正确方法config->constants.php。您能否提供有关您面临的错误的详细信息以及您尝试使用这些变量的代码。请记住,这些变量不需要$使用符号。喜欢它可以用作$a = SuperAdmin不作为$a = $SuperAdmin

于 2012-12-21T13:22:57.510 回答
0
You may utilise config file (system/application/config/config.php) to set configuration related variables.

Or use constant file (system/application/config/constants.php) to store site preference constants.
于 2014-01-07T10:22:00.577 回答