certo
invece di
while (!feof($fp)) {
$str[] = fread($fp, 4096);
}
fclose($fp);
$ISO = implode('',$str);
print $ISO;
fai
while (!feof($fp)) {
// VANNO PARSATI GLI HEADERS \\
echo fread($fp, 8192);
}
fclose($fp);
---
Ovviamente facendo questo c'è un grosso problema, ovvero gli headers!
Devi fare una cosa particolare ... metti i vari chunk in un'array, come facevi prima, e ogni chunk, prima di metterlo, lo parsi alla ricerca di un doppio invio (solo \n\n) e se lo trovi tagli il chunk al punto che ti serve, li analizzi e acquisisci informazioni come la dimensione del file e simili dopo di che invii le informazioni che servono. Una volta fatta questa fase puoi inviare in blocco il resto senza problemi
Se vuoi aumentare ancora il buffer puoi farlo ma su windows non puoi ricevere più di 8192 byte per blocco