В чем причина следующей ошибки в коде?Первый раз запускается без проблем, но во второй раз возникает ошибка «Обнаружено нечисловое значение»:
public function checkName(string $name, string $path, string $extension, int $num)
{
if (Storage::exists("$path/$name"))
{
$withoutExt = preg_replace('/\\.[^.\\s]{3,4}$/', '', $name);
if ($num > 1)
$withoutExt = str_replace('_'.$num-1, '_'.$num, $withoutExt);
else
$withoutExt = $withoutExt . '_'.$num;
$newName = "$withoutExt.$extension";
if (Storage::exists("$path/$newName")) {
return $this->checkName($newName, $path, $extension, $num+1);
}
else
return $newName;
}
return $name;
}
$fileNameSave = (new Attachment)->checkName($fileName, $filePath, $file->getClientOriginalExtension(), 1);
exception: "ErrorException"
line: 84
message: "A non-numeric value encountered"