PHP 全局变量
名称:初始 vj 名称:vj 名称:file2 中的 vj 名称:vj
代码:
<?php
$name ;
$name ='initial vj';
echo '<br/>name: ' .$name;
test($name);
function test(&$name)
{
$name = 'vj';
echo '<br/>name: ' .$name;
}
echo '<br/>name: ' .$name;
include('file2.php');
?>
<?php
$name;
echo '<br />name in file2: ' .$name;
?>
这个概念称为“应用范围”。 PHP 更适合会话、请求或页面范围。要将数据放置在 PHP 的应用程序范围内,更常见的是进行数据库调用来获取值。
我们可以使用 $_SESSION、$_REQUEST 或 $_POST 和 $_GET 等超全局变量来将变量分配到超出一页、会话、请求或页面范围内。 PHP 没有通用的、类似的方法来为应用程序范围内的变量赋值。相反,应用程序范围通常是通过调用外部数据源(例如数据库或文件)来模仿的。 PHP 的早期版本有一些倾向于应用程序范围概念的功能,但它们已被弃用。
对于您的问题:
我们通常将这种代码编写为 $_SESSION 变量,一次可供一个用户使用,而不是由一个用户为所有用户执行此操作。我们常见的是使用数据库写入和数据库读取来解决此类问题。只需由编写它的用户记下该值即可。送给读者吧。
有一个名为 $GLOBALS 的超级全局,但它更多的是用于注释变量如何命名的快捷方式。这不是一个会给变量带来应用范围的功能。
JSP 允许通过简单声明来使用应用程序范围的变量。 ASP 允许通过 XML 进行应用程序配置来使用应用程序范围的变量。 PHP 不直接在变量、对象或类的上下文中使用应用程序范围。
全局并不意味着世界上每个人都可以使用这些变量。全局是指该会话中的所有对象。会话之间不进行通信。如果他们真的这么做的话,那将是一场噩梦。
如果您有一个需要共享的变量,您应该将其保存在数据库中,并且每个用户都会调用该变量来使用它。
如果你重视理智,就不要使用全局变量。上帝保佑他们有一天不会像你想象的那样。
是的,在index.php中声明的全局变量在file.php中可用。这就是问题开始的地方。假设全局变量的值有错误,例如 $myGlobal。
这只是反对全局变量的一点。还有很多其他的。
如果事情如你所说,如果一个全局变量可以被所有会话共享,那么混乱会更大。感谢上帝,也感谢语言设计者,全局变量是全局的仅在会话范围内。
写入 txt 文件,然后在需要时读取。
$yourvalue=202406;
file_put_contents('global.txt',$yourvalue);
//read when needed
$yourvalue=file_get_contents('global.txt')