在session php中存储旧的文件夹大小


Store old folder size in session php

我使用php计算一个文件夹的大小,然后将其存储在session中,然后我使用其他函数删除一些文件,然后计算文件夹的大小,

我想要新旧状态的差异

但是session存储每次新数据并且差异变为0

如何在会话中保持旧的大小并防止它被覆盖?

下面是部分代码

 $this->size_session =  $currentsize;
  $_SESSION['oldsize']=$this->size_session; 

i计算提交按钮后的新尺寸

if($_REQUEST['file_delete']):
      $this->size_now = $currentsize;
     $_SESSION['oldsize']- $this->size_now;
   endif;

在改变$_SESSION['oldsize']的值之前,你应该把$_SESSION['oldsize']读到另一个变量:

$old_size = $_SESSION['oldsize'];
if ($_REQUEST ... ):
   (...)
endif;
$difference = $old_size - $_SESSION['oldsize'];

只有$_SESSION['oldsize']不是一个很好的名字,它不应该是'actualsize',因为你用它来存储实际的大小?div;)

不确定这个例子是手动输入的还是复制/粘贴的,但是:

$_SESSION['oldsize']- $this->size_now;

应该看起来像这样:

$difference = $_SESSION['oldsize'] - $this->size_now;