metodo o funcion para subir y renombrar imagen en php

Hola amigos resulta que tengo este código que me hice en una anterior aplicación, pero resuta que la que estoy haciendo ahora es con programación orientada a objetos. Y no se como convertir este código en una función o método.

    $  nombreTemporal = $  _FILES['afile']['tmp_name'];         $  cadena = "abcdefghijklmnopqrstuwwxyzABCDEFGHIJKLMNOPQVWXYZ1234567";         $  longitud = strlen($  cadena);         $  archivo=$  _FILES['afile']['name'];         $  nombreFinal="i";         $  extension = explode(".",$  archivo);         $  ext = $  extension[1];//AQUI LA EXTENSION         for($  i=0; $  i<=6; $  i++){             $  aleatorio = rand(1, $  longitud);             $  caracter = substr($  cadena, $  aleatorio, 1);             $  nombreFinal.= $  caracter;         }         $  nombreFinal.= ".";         $  nombreFinal.= $  ext;         move_uploaded_file($  nombreTemporal, 'uploads/'.$  nombreFinal);   

El método o función quedaría mas o menos así:

  public function getSubirNombrarImagen($  imagen){       $  imagen // en esta variable iría la imagen subida desde el formulario   }         }      }  

Digamos que no se como tratar el paso de la variable $ imagen(donde irá la imagen desde formulario como parámetro) a la función y poderla tratar con la variable array : $ nombreTemporal = $ _FILES[‘afile’][‘tmp_name’]

Gracias por vuestra ayuda no busco que se me haga el código solo una orientación.