php - 如果为常量设置,但未定义?

标签 php constants isset defined

如果我设置一个常量 = '',
如何检查常量内部是否有东西?
(即查看它是否设置为空字符串以外的内容。)

defined() 没有执行我想要的操作,因为它已经被定义(如 '')。
isset() 不适用于常量。

有什么简单的方法吗?

最佳答案

manual表示,isset() 返回“[...] 变量是否已设置且不为 NULL”。

常量不是变量,因此您无法检查它们。不过,您可以试试这个:

define('FOO', 1);

if (defined('FOO') && 1 == FOO) {
// ....
}

因此,当您的常量被定义为空字符串时,您首先必须检查它是否确实被定义,然后检查它的值('' == MY_CONSTANT).

关于php - 如果为常量设置,但未定义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6446598/

相关文章:

php - 在多个类中有效地使用数据

php - MySql,在重复更新时插入

c++ - 关于正确处理的建议,这是明智的吗?

php - isset条件在不同的点击下表现不同

php - 具有一个或多个(多个)参数的搜索表单

php - 如何检查 $_GET 参数是否存在但没有值?

从自制软件在 Mac OSX Lion 上安装 php 5.4 - 缺少 mysqli 扩展

java - Java 5+ 中的静态字符串常量 VS 枚举

c++ - C++中const的用法

php - MYSQL 连接查询问题