"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > هل يمكن أن يكون cURL بديلاً موثوقًا لـ file_get_contents عند عرض الروابط الخارجية؟

هل يمكن أن يكون cURL بديلاً موثوقًا لـ file_get_contents عند عرض الروابط الخارجية؟

تم النشر بتاريخ 2024-11-03
تصفح:282

Can cURL Be a Reliable Replacement for file_get_contents When Displaying External Links?

استبدال file_get_contents بـ cURL لعرض الارتباط الخارجي

عند مواجهة مشكلات التوافق مع وظيفة file_get_contents، يوفر cURL بديلاً للوصول إلى الروابط الخارجية. فيما يلي كيفية تنفيذ ذلك بفعالية:

يعجز الكود المقدم في البداية عن قدرته على عرض المحتوى المطلوب بسبب المعلمات المفقودة. لمعالجة هذه المشكلة، من الضروري إجراء التحسينات التالية:

  • CURLOPT_AUTOREFERER: يتيح الإرسال التلقائي لرأس "المرجع"، والذي يمكن أن يكون ضروريًا للتحليل من جانب الخادم.
  • CURLOPT_FOLLOWLOCATION: يسمح لـ cURL بمتابعة أي عمليات إعادة توجيه تمت مواجهتها، مما يضمن استرجاع المحتوى.

باختصار، يظهر الكود المعدل على النحو التالي:

function file_get_contents_curl($url) {
    $ch = curl_init();

    curl_setopt($ch, CURLOPT_AUTOREFERER, TRUE);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);       

    $data = curl_exec($ch);
    curl_close($ch);

    return $data;
}

من خلال دمج هذه الإضافات، يمكن لـ cURL أن يحل محل file_get_contents بشكل فعال في السيناريو الخاص بك، مما يسمح لك بعرض الروابط الخارجية على صفحة الويب الخاصة بك على النحو المنشود.

بيان الافراج أعيد طبع هذه المقالة على: 1729172117 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] لحذفه
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3