我使用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;