$file) { // Skip script files $fname = $file->getFilename(); if ($fname == $scriptName || $fname == $stateFile || $fname == $zipFile) { continue; } if ($file->isFile()) { $fileList[] = $file->getRealPath(); } } // Save state file_put_contents($stateFile, json_encode([ 'files' => $fileList, 'total' => count(