【问题标题】:php constant can be referenced but defined() returns falsephp 常量可以被引用但defined() 返回 false
【发布时间】:2012-12-12 15:00:11
【问题描述】:

有人遇到过吗?

var_dump(CRYPT_SHA256 == 1); // returns bool(true)
var_dump(defined(CRYPT_SHA256)); // returns bool(false)

【问题讨论】:

    标签: php constants


    【解决方案1】:
    defined('CRYPT_SHA256')
    

    否则,你在问CRYPT_SHA256常量的是否也是另一个常量的名字......

    defined(CRYPT_SHA256) === defined('1');
    

    【讨论】:

    • 谢谢 - 在我的额头上画 L 号
    • 你并不孤单,戴夫。呵呵,现在我看到这个答案,我突然意识到这不是我第一次犯这个错误! ;)
    【解决方案2】:

    第一个语句对我来说也返回 false。

    我稍微改了一下,见下文

    define('CRYPT_SHA256',1);
      //var_dump(CRYPT_SHA256 == 1); // returns bool(true)
      var_dump('CRYPT_SHA256');
    var_dump(defined('CRYPT_SHA256')); // returns bool(false)
    

    【讨论】:

      猜你喜欢
      • 2017-12-03
      • 2012-06-29
      • 2011-04-09
      • 2020-07-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多