id . '-'; $len = strlen($expected); foreach ($files as $entry) { if (substr($entry, 0, $len) === $expected) { // this is an original upload. $parts = explode('-', str_replace(['.csv.encrypted', $expected], '', $entry)); $originalUpload = intval($parts[1]); $date = date('Y-m-d \a\t H-i-s', $originalUpload); $newFileName = 'Old CSV import dated ' . $date . '.csv'; $content = Crypt::decrypt(file_get_contents($path . DIRECTORY_SEPARATOR . $entry)); $fullPath = storage_path('export') . DIRECTORY_SEPARATOR . $this->job->key . '-' . $newFileName; // write to file: file_put_contents($fullPath, $content); // add entry to set: $this->getFiles()->push($fullPath); } } } }