How can PHP be used to extract and manipulate timestamps from file names?

When dealing with file names that contain timestamps, PHP can be used to extract and manipulate these timestamps for further processing. One way to achieve this is by using regular expressions to extract the timestamp from the file name and then converting it to a more usable format using PHP's date functions. This can be particularly useful when working with log files or any files that are named based on a timestamp.

<?php
// Example file name containing a timestamp: log_20220101.txt
$fileName = "log_20220101.txt";

// Extracting the timestamp using regular expressions
if (preg_match('/(\d{8})/', $fileName, $matches)) {
    $timestamp = $matches[0];
    
    // Converting the timestamp to a readable date format
    $date = date("Y-m-d H:i:s", strtotime($timestamp));
    
    echo "Original file name: $fileName\n";
    echo "Extracted timestamp: $timestamp\n";
    echo "Converted date: $date\n";
} else {
    echo "No timestamp found in file name.";
}
?>