cURL (عميل الروابط) هو أداة ومكتبة متعددة الاستخدامات من سطر الأوامر تُستخدم لنقل البيانات عبر بروتوكولات الشبكة المختلفة. مع العديد من الميزات الرئيسية مثل تحميل الملفات، واختبار واجهات برمجة التطبيقات، وكشط المواقع، وأتمتة نقل البيانات، تُعتبر cURL أداة شائعة جداً للمطورين.
إذا كنت لا تزال تبحث عن أداة واجهة برمجة تطبيقات تتيح لك بناء، نمذجة، تصحيح، أو توثيق واجهات برمجة التطبيقات، فلا تبحث أكثر - انقر على الزر أدناه لبدء استخدامه مجاناً!👇
تعريف رسمي للدالة curl_init() [PHP]
استنادًا إلى الموقع الرسمي لـ PHP، تقوم دالة curl_init بتهيئة جلسة cURL وتعيد مقبض cURL للاستخدام مع دوال curl_setopt() و curl_exec() و curl_close().
المعلمات المعنية
url
إذا قدمت رابط URL، فسيتم تعيين خيار CURLOPT_URL إلى قيمته. يمكنك أيضًا تعيين هذا الخيار يدويًا باستخدام دالة curl_setopt().
ومع ذلك، يرجى ملاحظة أن بروتوكول file مُعطَّل بواسطة cURL نفسه إذا تم تعيين open_basedir.
قيم الإرجاع
تعيد دالة curl_init() مقبض cURL عند النجاح، وfalse عند حدوث الأخطاء.
أمثلة على الكود لـ curl_init()
إليك بعض الأمثلة على استخدام دالة curl_init().
مثال 1 - تهيئة جلسة cURL وجلب صفحة ويب
<?php
// إنشاء مورد cURL جديد
$ch = curl_init();
// تعيين URL وخيارات مناسبة أخرى
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch, CURLOPT_HEADER, 0);
// جلب URL وتمريره إلى المتصفح
curl_exec($ch);
// إغلاق مورد cURL وتحرير الموارد النظامية
curl_close($ch);
?>مثال 2 - تحميل ملف
$url = "https://example.com/image.jpg";
$filename = "downloaded_image.jpg";
// تهيئة جلسة cURL
$curl = curl_init($url);
// تعيين الخيار لإرجاع النقل كسلسلة
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
// تنفيذ طلب cURL وتخزين الاستجابة
$response = curl_exec($curl);
// التحقق من الأخطاء
if (curl_errno($curl)) {
echo "خطأ في تحميل الملف: " . curl_error($curl);
exit;
}
// إغلاق جلسة cURL
curl_close($curl);
// فتح الملف للكتابة
$fp = fopen($filename, 'w');
// كتابة المحتوى الذي تم تحميله إلى الملف
fwrite($fp, $response);
// إغلاق مقبض الملف
fclose($fp);
echo "تم تحميل الملف بنجاح!";
مثال 3 - إرسال طلب GET إلى واجهة برمجة التطبيقات
$url = "https://api.example.com/data";
// تهيئة جلسة cURL
$curl = curl_init($url);
// تعيين الخيار لإرجاع النقل كسلسلة
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
// تنفيذ طلب cURL وتخزين الاستجابة
$response = curl_exec($curl);
// التحقق من الأخطاء
if (curl_errno($curl)) {
echo "خطأ في جلب البيانات: " . curl_error($curl);
exit;
}
// إغلاق جلسة cURL
curl_close($curl);
// فك تشفير الاستجابة بصيغة JSON (على افتراض أن واجهة برمجة التطبيقات تعيد JSON)
$data = json_decode($response, true);
// الوصول إلى البيانات من الاستجابة وعرضها
echo "استجابة واجهة برمجة التطبيقات:<br>";
print_r($data);
هذه بعض الأمثلة الأساسية لاستخدام دالة curl_init() في PHP. هناك العديد من الخيارات والوظائف الأخرى المتاحة مع cURL لتخصيص عمليات نقل البيانات بناءً على متطلباتك الخاصة، لذا تأكد من مراجعة الوثائق الرسمية لـ cURL على: https://www.php.net/manual/en/book.curl.php

Apidog - العمل مع ملفات cURL بسهولة
Apidog هي منصة متطورة لتطوير واجهات برمجة التطبيقات توفر للمستخدمين جميع الأدوات الضرورية لدورة حياة واجهة برمجة التطبيقات بالكامل. مع Apidog، لم يعد عليك تحميل برامج متعددة مثل Postman وStoplight وReadMe. يمكن أن تكون Apidog حلاً شاملاً لمشاكلك المتعلقة بواجهة برمجة التطبيقات.

استيراد أوامر cURL بسرعة إلى Apidog

يدعم Apidog المستخدمين الذين يرغبون في استيراد أوامر cURL إلى Apidog. في مشروع فارغ، انقر على الزر الأرجواني + الموجود في الجزء العلوي الأيسر من نافذة Apidog، واختر استيراد cURL.

انسخ والصق أمر cURL في الصندوق المعروض على شاشتك.

إذا تم النجاح، يجب أن تكون الآن قادرًا على عرض أمر cURL على هيئة طلب API.
توليد كود PHP مع Apidog
إذا كنت بحاجة إلى المساعدة في برمجة PHP، فإن Apidog لديه ميزة توليد الكود التي يمكن أن تساعدك في ذلك.

أولاً، ابحث عن زر </> توليد كود على أي واجهة برمجة تطبيقات أو طلب، واختر توليد كود العميل من القائمة المنسدلة.

بعد ذلك، اختر PHP، وابحث عن قسم cURL. يجب أن ترى الآن الكود الذي تم توليده لـ cURL. كل ما عليك فعله هو نسخه ولصقه في IDE الخاص بك (بيئة تطوير متكاملة) والاستمرار في تطوير تطبيقك.
الخاتمة
curl_init يعتبر الأساس للتفاعل مع الخوادم وعناوين URLs باستخدام مكتبة cURL في PHP. إنها تشرع قناة اتصال جديدة، مما يعيد مقبضًا للإعدادات الإضافية ونقل البيانات. من خلال استخدام curl_init مع وظائف cURL الأخرى، يمكنك تحميل الملفات، إرسال طلبات واجهات برمجة التطبيقات، أتمتة نقل البيانات، وأكثر من ذلك. تمتد مرونة cURL إلى ما هو أبعد من HTTP/HTTPS، داعمةً بروتوكولات متعددة لإدارة البيانات بشكل شامل عبر تطبيقاتك.
بفضل سهولة الاستخدام والقدرات الواسعة، فإن curl_init يمكّن المطورين من التعامل بكفاءة مع احتياجات نقل البيانات ضمن كود PHP الخاص بهم.
![[دليل] ما هو curl_init؟](https://assets.apidog.com/blog/2024/06/curl-init-cover.png)