السلام عليكم و رحمة الله و بركاته

هذا الكود و جدته في Stackoverflow يقوم بتحميل ملفات بحجم كبير بدون ان تظهر لك اي رسالة خطاء من السيرفر

طبعا كنت استخدم دالة خاصة بالتحميل تعتمد على curl لكنها لا تعمل على الملفات الكبيرة حيث حمل لي 40MB من ملف حجمه 80MB . و كنت دائما استغرب في توقف الكود عن هذا الحجم رغم ان سرعة خط الاتصال بالسيرفر تمكن curl من تحميل الملف قبل تخطي الحد الاقصى لتنفيد السكربت .

المهم يبدوا ان الخطاء كان من الذاكرة حيث تمتلي الذاكرة بسرعة عند تحميل ملف كبيرة و تظهر رسالة 404 Not found

<?php     
function download($file_source, $file_target='structure.rdf.u8.gz') {
    $rh = fopen($file_source, 'rb');
    $wh = fopen($file_target, 'w+b');
    if (!$rh || !$wh) {
        return false;
    }

    while (!feof($rh)) {
        if (fwrite($wh, fread($rh, 4096)) === FALSE) {
            return false;
        }
        echo ' ';
        flush();
    }

    fclose($rh);
    fclose($wh);

    return true;
}
     $result = download('
http://rdf.dmoz.org/rdf/str...

المصدر

لا اعرف ان كانت نفس الفكرة ممكن تنفيدها على curl او file_get_content