PHP中的DEFINE与variables
有人可以解释使用之间的差异
define('SOMETHING', true);
和
$SOMETHING = true;
也许一个或另一个之间的好处?
我使用variables无处不在,甚至在包含到每个页面的configurationtypes文件中,我仍然使用variables,因为我不明白为什么要使用define方法。
DEFINE是一个常量,常量是全局的,可以在任何地方使用。 它们也不能被重新定义,哪些variables可以。
我通常使用DEFINE作为configuration,因为没有人可以在事后处理它,而且我可以在任何地方检查它,而不用全局configuration,以便于检查。
一旦定义,“常量”不能在运行时改变,而普通的variables赋值可以。
常量对于像configuration指令这样的东西更好,在执行过程中不应该改变它。 此外,如果明确地规定值是恒定的,则代码更容易阅读(并保持和移交)。
与支持读取和写入操作的标准variables相比, define()会生成一个只读variables。
范围也有所不同。
在由原始海报给出的例子中, $SOMETHING
将不能在函数内访问,而define('SOMETHING', true)
将会是。
当你需要从一个函数内部访问数据时,常量是非常有用的,请检查这个
<?php function data(){ define("app","hey you can see me from outside the function",false); $tech = "xampp"; } data(); echo $tech; echo app; ?>
如果你使用一个variables,你永远不会得到里面的值,这是我得到的
注意:第8行D:\ xampp \ htdocs \ data \ index.php中的未定义variables:tech嘿,你可以从函数的外部看到我