我将我的Wordpress实例从4.5升级到4.8,由于某种原因,我的布尔环境变量现在返回为" false"而不是false
。由于我的PHP版本没有改变,我对这个改变有点不知所措。但更重要的是,关于前进,通过环境变量管理将布尔变为PHP的最佳方法是什么?
这是我的.env行:
WP_FORCE_SSL_ADMIN=false
这是我在wp-config.php中因为字符串转换而返回true
的行。
define('FORCE_SSL_ADMIN', getenv('WP_FORCE_SSL_ADMIN'));
这里是var_dump:
["WP_FORCE_SSL_ADMIN"]=>
string(5) "false"
我知道我可以简单地重构定义来解释字符串转换,但是我很难理解我什么都不应该知道什么改变了。这适用于wordpress版本4.5。
寻找答案来解释将布尔变量从我的环境传递到PHP的最佳方法,还是我总是要考虑字符串转换?
答案 0 :(得分:1)
万一有人来到这里寻找我如何解决它的答案,我所做的只是简单地比较" true"的字符串。
define('FORCE_SSL_ADMIN', getenv('WP_FORCE_SSL_ADMIN') === "true");
虽然这有效,但对我来说仍然不太合适,就像我错过了一些东西。