DEFINE与PHP中的变量

Jas*_*vis 61 php

有人可以解释使用之间的区别

define('SOMETHING', true);
Run Code Online (Sandbox Code Playgroud)

$SOMETHING = true;
Run Code Online (Sandbox Code Playgroud)

也许是一个或另一个之间的好处?

我在任何地方使用变量,甚至在包含在每个页面的配置类型文件中我仍然使用变量,因为我不明白为什么要使用define方法.

Tyl*_*ter 86

DEFINE是常量,常量是全局的,可以在任何地方使用.它们也无法重新定义,哪些变量可以.

我通常使用DEFINE for Configs,因为没有人可以在事后处理它,我可以在任何地方检查它而不需要全局,以便更容易检查.


kar*_*m79 13

一旦定义,'常量'不能在运行时更改,而普通的变量赋值可以.

对于配置指令之类的事情,常量更好,在执行期间不应该更改.此外,如果明确地表示要保持恒定的值,则代码更容易阅读(并保持和切换).


use*_*026 6

与支持读写操作的标准变量相比,define()生成只读变量.

  • 根据定义,常数不是变量(没有双关语意思);-) (2认同)

Ran*_*orn 5

范围也有所不同。

在原始海报给出的示例中,$SOMETHING在函数内将不可访问,而在函数内将可访问define('SOMETHING', true)