我正在读一本关于PHP以及关于使用TRUE和FALSE的书,它说:
事实上,小写版本更稳定,因为PHP不允许您重新定义它们;大写版本可以重新定义。
我试图重新定义TRUE和FALSE,但没有成功!!我在谷歌上重新定义常量,发现我需要使用runkit_constant_redefine(),我没有安装runkit扩展,所以我不能在TRUE和FALSE上尝试。
我的问题是,TRUE、true、FALSE或false是否可以用runkit_constant_redefine()重新定义?
发布于 2014-10-23 16:44:48
是的,你可以,对于大写版本:
$ php
php > var_dump(defined('TRUE'), TRUE);
bool(true)
bool(true)
php > define('TRUE', 'arglebargle');
php > var_dump(defined('TRUE'), TRUE);
bool(true)
string(11) "arglebargle"
php > echo phpversion();
5.4.16小写,不多:
php > var_dump(defined('true'), true);
bool(true)
bool(true)
php > define('true', 'foobarbaz');
PHP Notice: Constant true already defined in php shell code on line 1但你为什么要这么做?重新定义现实很难最终实现。
https://stackoverflow.com/questions/26532998
复制相似问题