Treehouse: Grow your CSS skills. Land your dream job.

Last updated on:

Get File Last Updated Date

/*
 * @param string $file Filepath
 * @param string $format dateformat
 * @link http://www.php.net/manual/de/function.date.php
 * @link http://www.php.net/manual/de/function.filemtime.php
 * @return string|bool Date or Boolean
 */

function getFiledate($file, $format) {
       if (is_file($file)) {
               $filePath = $file;
               if (!realpath($filePath)) {
                       $filePath = $_SERVER["DOCUMENT_ROOT"].$filePath;
       }
               $fileDate = filemtime($filePath);
               if ($fileDate) {
                       $fileDate = date("$format",$fileDate);
                       return $fileDate;
               }
               return false;
       }
       return false;
}

Comments

  1. Ibrahim
    Permalink to comment#

    Nice little helpful function. Thank you for sharing.

  2. burn
    Permalink to comment#

    Just to let you know that I modified your function to check if the file date is within a given date interval:

    
    public function doFileDatesComparison($file) {
    	   if (is_file($file)) {
    		   $filePath = $file;
    		   if (!realpath($filePath)) {
    			   $filePath = $_SERVER["DOCUMENT_ROOT"] . $filePath;
    		   }
    		   $fileDate = filemtime($filePath);
    		   if ($fileDate) {
    			   $fileDate = date('U', $fileDate);
    
    			   if ($fileDate > $this->downBound && $fileDate upBound) {
    			   		return date('Y/m/d H:i:s', $fileDate);
    			   }
    		   }
    			return false;
    	   }
    	   return false;
    	}
    
    • burn
      Permalink to comment#

      Whops my fault, I’m posting the method again after turning < into <

      
      public function doFileDatesComparison($file) {
      	   if (is_file($file)) {
      		   $filePath = $file;
      		   if (!realpath($filePath)) {
      			   $filePath = $_SERVER["DOCUMENT_ROOT"] . $filePath;
      		   }
      		   $fileDate = filemtime($filePath);
      		   if ($fileDate) {
      			   $fileDate = date('U', $fileDate);
      
      			   if ($fileDate > $this->downBound && $fileDate < $this->upBound) {
      			   		return date('Y/m/d H:i:s', $fileDate);
      			   }
      		   }
      			return false;
      	   }
      	   return false;
      	}
      

Leave a Comment

Posting Code

We highly encourage you to post problematic HTML/CSS/JavaScript over on CodePen and include the link in your post. It's much easier to see, understand, and help with when you do that.

Markdown is supported, so you can write inline code like `<div>this</div>` or multiline blocks of code in in triple backtick fences like this:

```
<script>
  function example() {
    element.innerHTML = "<div>code</div>";
  }
</script>
```