如何在PHP中使用常量?

时间:2014-04-03 15:32:22

标签: php constants

我想在PHP中使用常量,但"WEB"被解释为false。我之前从未使用过常数,我错过了什么?

define("WEB", true);
define("MOBILE", false);
define("DESKTOP", false);


if (defined('MOBILE' == true) || defined('DESKTOP' == true) ){
echo "MOBILE or DESKTOP";
} else if (defined('WEB' == true)) {
echo "WEB";
}

3 个答案:

答案 0 :(得分:4)

您错误地使用了defined()。您没有检查是否定义了常量。你正在检查他们的价值观只需检查它们就像变量一样:

if (MOBILE == true || DESKTOP == true ){
echo "MOBILE or DESKTOP";
} else if (WEB == true) {
echo "WEB";
}

可以缩短为:

if (MOBILE || DESKTOP){
echo "MOBILE or DESKTOP";
} else if (WEB) {
echo "WEB";
}

答案 1 :(得分:0)

defined为您提供常量是否存在,而不是其值。

if (MOBILE || DESKTOP){
  echo "MOBILE or DESKTOP";
} else if (WEB) {
  echo "WEB";
}

答案 2 :(得分:0)

如果要检查是否定义了常量,则代码应为:

define("WEB", true);
define("MOBILE", false);
define("DESKTOP", false);

if(defined('MOBILE') || defined('DESKTOP'))
  echo "either MOBILE or DESKTOP is defined";
elseif(defined('WEB')) echo "WEB is defined";

如果要检查常量值是真还是假,它将是

if(MOBILE || DESKTOP)
  echo "either MOBILE or DESKTOP is true";
elseif(WEB) echo "WEB is true";