$serverInstanceID."/PHP Logs", "./data/db-errors" => $serverInstanceID."/DB Failures", ]; foreach($directories as $directory => $s3path) { clearstatcache(); $files = scandir($directory); if($files === FALSE) { // @TODO: Couldn't read local directory do something ? break; } foreach($files as $file) { if($file == ".." || $file == ".") { continue; } $sourceFile = $directory.DIRECTORY_SEPARATOR.$file; $lastModTime = filemtime($sourceFile); if($lastModTime <= strtotime("-5 days")) { try { $result = $awsS3->putObject([ 'Bucket' => $logBucket, 'Key' => $s3path . DIRECTORY_SEPARATOR . $file, 'SourceFile' => $sourceFile, 'ContentType' => 'text/plain' ]); } catch (\Aws\S3\Exception\S3Exception $e) { // @TODO: couldn't put object do something? continue; } $resultsArray = $result->toArray(); if (!isset($resultsArray['@metadata']) || !isset($resultsArray['@metadata']['statusCode']) || $resultsArray['@metadata']['statusCode'] != 200) { // @TODO: Couldn't upload to s3 do something? } else { $unlink = @unlink($sourceFile); if ($unlink === FALSE) { // @TODO: Couldn't remove file locally do something? } } } } } sleep(10);