diff --git a/classes/Importer.php b/classes/Importer.php index b3f3ac81c6ef13973d61658e5653015fb6c212e7..7862bd07142cd258f68109932a0e239e2b512c61 100644 --- a/classes/Importer.php +++ b/classes/Importer.php @@ -208,7 +208,7 @@ final class Importer return $namespaces; } - private function createModels($models) + private function createModels($models): void { try { foreach ($models as $k => $v) { @@ -217,17 +217,25 @@ final class Importer if (file_exists($path[$i])) { if (!is_dir($path[$i])) { unlink($path[$i]); - mkdir($path[$i]); + if (!mkdir($concurrentDirectory = $path[$i]) && !is_dir($concurrentDirectory)) { + throw new \RuntimeException( + sprintf('Directory "%s" was not created', $concurrentDirectory) + ); + } } - } else { - mkdir($path[$i]); + } elseif (!mkdir($concurrentDirectory = $path[$i]) && !is_dir($concurrentDirectory)) { + throw new \RuntimeException( + sprintf('Directory "%s" was not created', $concurrentDirectory) + ); } + chdir($path[$i]); } $fh = fopen(end($path), 'w'); fwrite($fh, $v); fclose($fh); + for ($i = 0; $i < sizeof($path) - 1; $i++) { chdir('..'); }