如何在不冲突不同用户的价值观的情况下管理网站上的变量

How variables on websites are managed without clashing the values of different users

<?php
    $value = $_POST['value'];   //line 1
    /* Some piece of code which really takes some time to execute */
    echo "Value is :" .$value;  // line 1000
?>

在上面的 php 代码中,我有一个变量 $value 保存用户输入值。 假设这个特定的页面同时被多个用户访问,变量的值如何保持对特定用户不受影响? 让我把我的问题说清楚。 假设如果用户 'A' 访问我的页面并将变量 $value 的值设置为 10(第 1 行), 在执行第 1000 行时,他应该得到他输入的值作为输出显示。 我知道从第 1 行到第 1000 行到达编译器不会花费太多时间,但考虑到最坏的情况 如果第 1 行和第 1000 行之间的代码需要一些时间来执行(比如 2 秒),到那时另一个用户 "B" 登录并 将变量 $value 的值设置为 99(第 1 行),第二个用户的值会影响第一个用户的值吗? 我试过这个,但我没有收到任何我期望的错误。我想知道为什么会这样?

remain unaffected for a particular user?

每个 php 脚本都有自己的线程。

一个用户不能更改另一个用户的内容。

或者说一个 PHP 两次 运行 的脚本不能操纵另一个。

(仅当您使用会话并且同一用户在每个 TAB 都没有自己的会话的浏览器中调用脚本两次时)

这有点像你开始一个程序两次。

你做的那一刻:$value = $_POST['value']; $_POST['value'] 的值被复制到 $value 中:不是通过引用而是通过值;因此,即使在 20,000 行之后 $_POST['value'] 发生了某些事情,只要页面没有重新加载; $value 仍然包含分配给它的 original/initial 数据; 除非您或其他人有权访问 $value 并做了类似的事情: $value = 'new value'; 其他那些,(只要 $value 没有在您的代码中的任何地方被覆盖:) $value 仍然会保留并将其值保留到脚本结束。