PHP会话变量请求时间

时间:2019-03-07 11:29:20

标签: php session

我想知道将PHP SESSION变量保存在脚本顶部作为变量还是只在整个脚本中使用SESSION变量是否会影响速度。例如

$_SESSION['bar'];

...

<p><?php echo $_SESSION['bar'] ?></p>
<p><?php echo $_SESSION['bar'][0] ?></p>

或如上所述:先保存SESSION变量,然后访问该变量。

$bar = $_SESSION['bar'];

...

<p><?php echo $bar ?></p>
<p><?php echo $bar[0] ?></p>

有什么区别吗? PHP是否每次都再次从服务器请求SESSION变量?

1 个答案:

答案 0 :(得分:0)

除非您进行了数百万次会话读/写操作(例如,循环执行),否则您不必担心此类微优化。即使您那样做,我仍然认为只要关闭该会话,PHP就会向该会话写入内容(对最后一个会话不是100%肯定的)。

请记住premature optimization is the root of all evil。 :)

更重要的是:

  • 始终建议将已使用多次的代码移入变量或辅助函数(DRY principle
  • 通过创建辅助函数或“包装器”类来访问诸如Sessions之类的低级服务,您的代码将成为“面向未来的”并且不受实现的约束。如果将来您决定将存储引擎从Session替换为Cookie或Redis,则只需更改helper类,其余代码即可正常工作。换句话说,尝试练习Orthogonality principle