Tach!
Bei einem Upload sendet der Client einen Request-Header Content-Length. In diesem Header steht die Anzahl der gesendeten Bytes. Der Webserver nun nimmt diesen Wert und setzt den in eine Umgebungsvariable CONTENT_LENGTH. Auf diese Variable kannst Du mit PHP zugreifen und somit Deinen eigenen Upload-Prozess sofort beenden wenn ein Schwellwert überschritten wird.
PHP ist nicht Perl! PHP-Scripte werden erst gestartet, wenn der Request vollständig beim Server angekommen ist. Man kann nur die generelle Requestgröße konfigurativ beschränken.
dedlfix.