I’m trying to write a program that will open up a directory (in this case: files/), scan all of the filenames (not including any directories or “..” or “.”) within this directory, and search for the filenames in the specified files from the “pages” array. If the filename is NOT found in the pages, the file will be moved to “unused-content”.
My current code does not work. How can I achieve this goal?
<?php
if($handle = opendir('files/')) {
while (false !== ($entry = readdir($handle))) {
if ($entry != "." && $entry != "..") {
$file_names[] = $entry;
}
}
closedir($handle);
}
$pages = array("page1.html","page2.shtml","page_three.shtml","page4.htm","page5.shtml");
for($x=0; $x<sizeOf($pages); $x++) {
$current_page = file_get_contents($pages[$x]);
for($i=0; $i<sizeOf($file_names); $i++) {
if(!strpos($current_page,$file_names[$i])) {
if (copy("files/".$file_names[$i],"files/unused-content/".$file_names[$i])) {
unlink("files/".$file_names[$i]);
}
}
}
}
?>
Thank you!
You don’t need all that long code .. all you need is
FilesystemIteratorSee another example using GlobIterator