php – Problema en la subida de archivos

He creado una subida de imágenes en PHP. La cuestión es que reutilizando el mismo código (cambiando el nombre de algunas variables) la segunda versión me suelta un error que el primero no. Llevo un rato revisando todo el código y no hay manera de dar con la solución.

Necesito ayuda, estoy algo desesperado.

Error en cuestión:

Warning: rename(public/assets/img/business/obveat.jpg,public/assets/img/business/1626402395.jpg): El proceso no tiene acceso al archivo porque está siendo utilizado por otro proceso (code: 32) in C:xampphtdocsproyectopubliccontrollersistema_controller.php on line 200

Warning: unlink(public/assets/img/business/1626402382.jpg): No such file or directory in C:xampphtdocsproyectopubliccontrollersistema_controller.php on line 206

Primer código (funciona):

        if(isset($_POST('send_location_image')))
    {
        $id = antiSQLi($_POST('id'));

        $route = 'public/assets/img/cities/';
        $file = $route . basename($_FILES('image')('name'));
        $fileType = pathinfo($file, PATHINFO_EXTENSION);
        if(!file_exists($route))
        {
            mkdir($route, 0777);
        }
        if(move_uploaded_file($_FILES('image')('tmp_name'), $file))
        {
            rename($file, $route . time() . '.' . $fileType);
            $values = array(
                'image'=>time() . '.' . $fileType
            );
            $this->model->update('mf_ubicaciones', $values, 'id = ' . $id . '');

            unlink($route . $this->params('location')('image'));

            $this->params('data_success') = 'Imagen actualizada';

            header("Refresh:0");
        }
    }

Segundo código (suelta el error):

        if(isset($_POST('send_business_image')))
    {
        $id = antiSQLi($_POST('id'));

        $route = 'public/assets/img/business/';
        $file = $route . basename($_FILES('image')('name'));
        $fileType = pathinfo($file, PATHINFO_EXTENSION);
        if(!file_exists($route))
        {
            mkdir($route, 0777);
        }
        if(move_uploaded_file($_FILES('image')('tmp_name'), $file))
        {
            rename($file, $route . time() . '.' . $fileType);
            $values = array(
                'image'=>time() . '.' . $fileType
            );
            $this->model->update('mf_negocios', $values, 'id = ' . $id . '');

            unlink($route . $this->params('business')('image'));

            $this->params('data_success') = 'Imagen actualizada';

            header("Refresh:0");
        }
    }

¿A qué se puede deber? Un saludo.