No se si esto resuelva tu problema pero en mi caso lo que hago es comprobar el peso antes de subirlo al servidor y si es menor al permitido lo sube y si no pues no espero sea esto a lo que te refieres, de todas maneras aqui te dejo el codigo que yo ocupo para hacer lo que te mencionaba
En este caso es para subir una foto.
Código PHP:
$archivo="fotos/".$_FILES['imagen']['name']; //archivo=al directorio y nombre de la foto
$tipo_archivo=$_FILES['imagen']['type']; //txtension del archivo
$tamano_archivo=$_FILES['imagen']['size'];//tamaño del archivo
if($archivo!='fotos/')
{
if(!((strpos($tipo_archivo,"gif") || strpos($tipo_archivo,"jpeg")) && ($tamamo_archivo < 200000)))
{
$error=1;
}
else
{
if(move_uploaded_file($_FILES['imagen']['tmp_name'],$archivo))
{
//El archivo se cargo de manera correcta
}
else
{
$error=2;
}
}
}
//Comprobar si existe error
if($error==1)
{
echo"<script> alert(\"El archivo no debe tener un tamaño superior a 200KB y debe tener formato JPEG o GIF\");</script>";
die();
}
elseif($error==2)
{
echo"<script> alert(\"No se ha podido guardar la imagen\");</script>";
die();
}