在PHP中跨脚本读取和写入全局变量

Rob*_*cks 4 php scripting webserver data-transfer global-variables

PHP是否具有可由一个正在运行的脚本修改并由另一个脚本读取的全局变量?

Bre*_*ker 12

不,根据设计,PHP是一种"无共享"架构,这意味着在同时运行的进程之间或在一个接一个地运行的请求之间不共享任何内容.有共享数据的方法,但您必须明确地这样做.

如果您只想分享来自同一用户的2个请求,那么会话或cookie可能就是您的选择.

如果要在多个用户之间共享,则可能需要某种共享持久性,可以是缓存中的短期(例如,memcached),也可以是数据库之类的更强大的持久性.

无论哪种方式,实际上都在每个请求上检索和重建数据.它只是在会话的情况下自动处理.


Fra*_*mer 5

您实际上可以使用共享内存APC(使用共享内存本身)来做到这一点。


Ped*_*ito 5

你可以使用$ _SESSION,即:

script1.php

<?php
session_start();
$_SESSION['myVar'] = "something";
?>
Run Code Online (Sandbox Code Playgroud)

script2.php

<?php
session_start();
echo $_SESSION['myVar'];
//something
?>
Run Code Online (Sandbox Code Playgroud)