hola!!
muchas gracias por responder y felicitaciones por el reconocimiento que le dieron, se lo merece 
  
para tomar el archivo ocupo $file=$_FILES['archivo']; 
lo que queria hacer es guardar un archivo en una variable de session
como 
$_SESSION['arch'][2]=$file; 
para despues poder subir el archivo con un copy();
pero me daba ese error que le comente. 
la razon de haber tratado de meter el archivo o la ruta en una variable de session, era por que tenia que subir varios archivos, el $doc era para hacer la pregunta que en codigo que pongo a continuacion es $arch que es un array 
for($i=0;$i<=count($arch);$i++){
...
$extension = explode(".",$_SESSION['arch'][$i][2]['name']); 
$num = count($extension)-1; 
....
if(copy($_SESSION['arch'][$i][2]['tmp_name'],"doc/$id_doc_ulti_$i.$extension[$num]")){
...
} 
} 
puedo ver el nombre de todos los archivos en el array, pero no puedo copiar. intente hacerlo con un solo archivo y  meterlo como a una variable de session que no es un array, para hacer pruebas, y tambien puedo ver el nombre y tmp_name pero no logro copiar. lo que no se es que si esto se puede o el tmp_name pierde la referencia al archivo cuando lo paso a una variable de session. 
saludos!!