有人能解释一下使用
define('SOMETHING', true);
与
$SOMETHING = true;
也许一个方法比另一个更有利呢?
我在任何地方都使用变量,甚至在一个被包含到每个页面的配置文件中,我仍然使用变量,因为我不知道为什么要使用定义方法。
有人能解释一下使用
define('SOMETHING', true);
与
$SOMETHING = true;
也许一个方法比另一个更有利呢?
我在任何地方都使用变量,甚至在一个被包含到每个页面的配置文件中,我仍然使用变量,因为我不知道为什么要使用定义方法。
DEFINE用于定义常量,常量为全局变量,可以在任何地方使用,并且不可重新定义,而变量可以被重新定义。
我通常用DEFINE来配置因为事后无法篡改,可以在任何地方检查并避免全局变量,从而使检查更加容易。
一旦定义,'常量'在运行时无法更改,而普通的变量赋值可以。
常量适用于像配置指令这样在执行期间不应更改的内容。此外,如果被认为是常量的值被明确地标记为常量,代码将更易于阅读(和维护和交接)。
范围也有所不同。
在原帖提供的示例中,$SOMETHING
在函数内不可访问,而 define('SOMETHING', true)
可以访问。
define()函数创建的是只读变量,与支持读写操作的普通变量不同。
<?php
function data(){
define("app","hey you can see me from outside the function",false);
$tech = "xampp";
}
data();
echo $tech;
echo app;
?>
如果您使用变量,您永远不会得到内部值,以下是我得到的内容
注意:D:\xampp\htdocs\data\index.php 第8行中未定义变量:tech 嘿,你可以从函数外面看到我