PHP查找最近2天内的文件更改

PHP查找最近2天内的文件更改,php,Php,几天前(不幸的是),我的网站被黑客攻击了。为了防止它,我想包括一个PHP,它可以检查在过去的2天内是否有任何文件被更改/添加。 我的出发点是以下函数: function topmods($dir) { $mods = array(); foreach (glob($dir . '/*') as $f) { $mods[] = filemtime($f); } sort($mods); $mods = array_reverse($mods); return $mo

几天前(不幸的是),我的网站被黑客攻击了。为了防止它,我想包括一个PHP,它可以检查在过去的2天内是否有任何文件被更改/添加。 我的出发点是以下函数:

function topmods($dir)
{
  $mods = array();
  foreach (glob($dir . '/*') as $f) {
    $mods[] = filemtime($f);
  }
  sort($mods);
  $mods = array_reverse($mods);
  return $mods;
}
我想hower对其进行改进,以便阵列中只包含在过去2天内更改的文件。有没有建议如何重写foreach函数,以便在数组中只包含满足此条件的文件

if (time() - filemtime($testfile) >= 2 * 86400)
感谢当
filemtime()
获取unix时间戳时,您可以创建2天前的unix时间戳并进行比较,如下所示:

函数topmods($dir)
{
//获取实际时间戳并减去2天
$dateToCompare=time()-((60*60*24)*2);
$mods=[];
foreach(全局($dir./*')作为$f){
//这只是比较两个时间戳值
如果(filemtime($f)作为
filemtime()
获取unix时间戳,则可以创建2天前的unix时间戳并进行比较,如下所示:

函数topmods($dir)
{
//获取实际时间戳并减去2天
$dateToCompare=time()-((60*60*24)*2);
$mods=[];
foreach(全局($dir./*')作为$f){
//这只是比较两个时间戳值
如果(filemtime($f),您可以验证代码:,而不是删除,您可以创建文件数组。您可以验证代码:,而不是删除,您可以创建文件数组