areMigrationsOrganizedByYear()) { $dir .= $this->appendDir(date('Y')); } if ($configuration->areMigrationsOrganizedByYearAndMonth()) { $dir .= $this->appendDir(date('m')); } $this->createDirIfNotExists($dir); return $dir; } private function appendDir(string $dir): string { return DIRECTORY_SEPARATOR . $dir; } private function createDirIfNotExists(string $dir): void { if (file_exists($dir)) { return; } mkdir($dir, 0755, true); } }