Get first file in directory PHP
As more files the directory contains, it should be faster to use readdir() instead, because we do not write all files into an array:
if ($h = opendir($dir)) {
while (($file = readdir($h)) !== false) {
if ($file != '.' && $file != '..') {
break;
}
}
closedir($h);
}
echo "The first file in $dir is $file";
But as readdir does not return a sorted result you maybe need to replace break
against a check that garantees the most recent file. One idea would be to add an increment numbering to your files and check for the highest number. Or you create a subfolder with the name of the most recent file and remove/create a new subfolder for every new file that is added to the folder.
You can get first file in directory like this
$directory = "path/to/file/";
$files = scandir ($directory);
$firstFile = $directory . $files[2];// because [0] = "." [1] = ".."
Then Open with fopen() you can use the w or w+ modes:
w Open for writing only; place the file pointer at the beginning of the file and truncate the file to zero length. If the file does not exist, attempt to create it.
$firstFile = scandir("path/to/file/")[2];
scandir: scans the given directory and puts into array: [0] = "." [1] = ".." [2] = "First File"