php 类常量判断是否有没有定义?类常量 不是常量哟

我实例化一个类后拿到了类常量,但是我要做一个类常量的判断,它是否有值有没有定义。翻了手册没有找到有检测的!我是类常量 不是 普通的常量,我不想用反射去取得!

阅读 6.9k
2 个回答

首先获取类常量不需要实例化该类,正确方式是类名::常量名或接口名::常量名;其次,判断类常量除了反射没有更好的其他办法判断类常量是否存在,defined()函数仅适用于常量,而不是适用类常量。一个略不优雅的方式:用constant()函数再@抑制错误,但没法判断定义的是否是null

You can also used defined(),such as defined('Redis::SERIALIZER_PHP');is_null, empty() is also can use.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题