English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
(PHP 4 >= 4.0.2, PHP 5)
curl_setopt — إعداد خيار نقل CURL.
bool curl_setopt ( resource $ch , int $option , mixed $value )
لإعداد خيار على معالج الجلسة CURL المحدد.
ch
المعالج CURL الذي يعود به curl_init().
option
الخيارات التي يجب تعيينها منCURLOPT_XXX.
القيمة
سيتم تعيين القيمة الموجودة في خيار option.
بالنسبة لهذه الخيارات الخيارية، يجب تعيين القيمة كقيمة من نوع bool:
خيار | اختياريالقيمةالقيمة | ملاحظة |
---|---|---|
CURLOPT_AUTOREFERER | عندما يتم استنادLocation:عندما يتم التحويل، سيقوم بتعيين عنوان الرأس في الكوكي تلقائيًا.Referer:المعلومات. | |
CURLOPT_BINARYTRANSFER | عندما يتم تفعيليتم إرجاع المعلومات التي تم الحصول عليها بواسطة curl_exec() على شكل تدفق ملف بدلاً من إرجاعها مباشرة.عندما يكون، سيقوم بالعودة إلى الناتج الأصلي (الخام). | |
CURLOPT_COOKIESESSION | عندما يتم تفعيله، سيقوم curl بنقل فقط ملف الكوكيز للجلسة، وسيقوم بتخطي الكوكي الأخرى، في الوضع المبدئي سيقوم CURL بتقديم جميع الكوكي إلى الخادم. كوكي الجلسة هي الكوكي التي توجد لتقييم صحة الجلسة على الخادم. | |
CURLOPT_CRLF | CURLOPT_CRLF | |
در صورت فعال بودن، کاراکترهای اتمی Unix را به کاراکترهای بازگشت و خط جدید تبدیل میکند. | CURLOPT_DNS_USE_GLOBAL_CACHE | |
در صورت فعال بودن، یک کش DNS جهانی فعال میکند، این گزینه امنیت thread-safe دارد و به صورت پیشفرض فعال است. | CURLOPT_FAILONERROR | |
HTTP status code نمایش میدهد، عملکرد پیشفرض است که اطلاعات HTTP با شماره کمتر از یا برابر با 400 را نادیده میگیرد. | CURLOPT_FILETIMEدر صورت فعال بودن، سعی میکند اطلاعات مستندات دور را تغییر دهد. اطلاعات نتیجه از طریق تابع curl_getinfo() به دست میآید.CURLINFO_FILETIME بازگشتی. | |
CURLOPT_FOLLOWLOCATION | در صورت فعال بودن، اطلاعات بازگشتی سرور را به عنوان گزینههای بازگشتی curl_getinfo() ارسال میکند."Location: "در سرور به صورت پیچیدگی به عنوان سربرگ بازگردانده میشود، ازCURLOPT_MAXREDIRSمقدار بازگشت پیچیدگی را محدود میکند. | |
CURLOPT_FORBID_REUSE | در پایان تعامل، اتصال را به زور قطع میکند و قابل استفاده مجدد نیست. | |
CURLOPT_FRESH_CONNECT | یک اتصال جدید اجباری را دریافت میکند، به جای اتصال موجود در کش. | |
CURLOPT_FTP_USE_EPRT | در صورت فعال بودن، در هنگام دانلود FTP از دستور EPRT (یا LPRT) استفاده میکند. تنظیم شده بهFALSEEPRT و LPRT غیرفعال میکند و از دستور PORT استفاده میکند. فقط. | |
CURLOPT_FTP_USE_EPSV | در صورت فعال بودن، قبل از بازگشت به حالت PASV در فرآیند انتقال FTP، ابتدا دستور EPSV را امتحان میکند. تنظیم شده بهFALSEEPSV دستور را غیرفعال میکند. | |
CURLOPT_FTPAPPEND | در صورت فعال بودن، به جای پوشش فایل، به آن اضافه میشود. | |
CURLOPT_FTPASCII | CURLOPT_TRANSFERTEXTالیهای است. | |
CURLOPT_FTPLISTONLY | در صورت فعال بودن، فقط نامهای پوشههای FTP لیست میشوند. | |
CURLOPT_HEADER | در صورت فعال بودن، اطلاعات فایل سرور به عنوان جریان دادهها خروجی داده میشود. | |
CURLINFO_HEADER_OUT | در صورت فعال بودن، درخواستهای رشتهای دستگیرهها را دنبال میکند. | از PHP 5.1.3 به بعد قابل استفاده است.CURLINFO_پیشوند به قصد آگاهی (عمدی) قرار داده شده است. |
CURLOPT_HTTPGET | در صورت فعال بودن، HTTP method به GET تنظیم میشود، زیرا GET به صورت پیشفرض است، بنابراین فقط در صورت تغییر از آن استفاده میشود. | |
CURLOPT_HTTPPROXYTUNNEL | در صورت فعال بودن، از طریق پروکسی HTTP برای انتقال استفاده میشود. | |
CURLOPT_MUTE | در صورت فعال بودن، تمامی پارامترهای تغییر یافته در تابع CURL به حالت پیشفرض بازگردانده میشوند. | |
CURLOPT_NETRC | بعد از برقراری اتصال، برای دریافت اطلاعات نام کاربری و رمز عبور از فایل ~/.netrc به ایستگاههای دور دسترسی پیدا کنید. | |
CURLOPT_NOBODY | عندما يتم تفعيله، لن يتم إرجاع جزء الجسم من HTML. | |
CURLOPT_NOPROGRESS | عندما يتم تفعيله، سيتم إغلاق شريط التقدم في نقل curl، يتم تعيين هذا الخيار بشكل افتراضي على التفعيل. ملاحظة: يقوم PHP بتعيين هذا الخيار تلقائيًا علىTRUE، يجب تغيير هذا الخيار فقط لأغراض الت调试. | |
CURLOPT_NOSIGNAL | عندما يتم تفعيله، سيتم تجاهل جميع الإشارات التي يمررها curl إلى php. يتم تفعيل هذا الخيار بشكل افتراضي في نقل SAPI الموزع. | تم إضافته في CURL 7.10. |
CURLOPT_POST | عندما يتم تفعيله، سيتم إرسال طلب POST عادي، النوع:application/x-www-form-urlencoded، مثل تقديم النموذج. | |
عندما يتم تفعيله، يسمح بإرسال ملفات HTTP، يجب أيضًا تعيين | CURLOPT_RETURNTRANSFERCURLOPT_INFILEوCURLOPT_INFILESIZE. | |
يتم إرجاع المعلومات التي تم الحصول عليها بواسطة curl_exec() على شكل تدفق ملف بدلاً من إرجاعها مباشرة. | باستخدام | |
CURLOPT_SSL_VERIFYPEER | عندما يتم تعطيله، سيقوم CURL بإنهاء التحقق من الخادم.CURLOPT_CAINFOيتم تعيين خيار إعداد استخدام الشهاداتCURLOPT_CAPATHيتم تعيين خيار إعداد مجلد الشهادات إذاCURLOPT_SSL_VERIFYPEER(القيمة الافتراضية 2) عند التفعيل،CURLOPT_SSL_VERIFYHOSTيجب أن يتم تعيينه علىTRUEإذا لم يتم تعيينه، يتم تعيينه علىFALSE. | يتم تعيينه افتراضيًا من CURL 7.10TRUE. بدءًا من CURL 7.10، يتم تفعيل الاتصال بشكل افتراضي. |
CURLOPT_TRANSFERTEXT | عندما يتم تفعيله، سيتم استخدام نمط ASCII في نقل FTP. بالنسبة لـ LDAP، سيتم استرجاع معلومات النص النقي بدلاً من HTML. على نظام Windows، لن يتعرف النظام علىSTDOUTلإعداد نمط ثنائي. | |
CURLOPT_UNRESTRICTED_AUTH | عندما يتم استخدامCURLOPT_FOLLOWLOCATIONسيتم إضافة معلومات اسم المستخدم وكلمة المرور في المناطق المتعددة من عنوان الرأس المُنتج، حتى إذا تغيرت النطاقية. | |
CURLOPT_UPLOAD | عندما يتم تفعيله، يسمح بتحميل الملفات. | |
CURLOPT_VERBOSE | عندما يتم تفعيله، سيتم تقديم جميع المعلومات، وسيتم تخزينها فيSTDERRأو المحددCURLOPT_STDERRفيها. |
بالنسبة للمعلمات الاختيارية لـ option التالية، يجب تعيين value على قيمة integer نوع.
خيار | اختياريالقيمةالقيمة | ملاحظة |
---|---|---|
CURLOPT_BUFFERSIZE | حجم البيانات التي يتم قراءتها من المخزن المؤقت في كل مرة تحصل فيها على بيانات، ولكن لا يُضمن أن يتم ملء هذه القيمة في كل مرة. | تم إضافة في CURL 7.10. |
CURLOPT_CLOSEPOLICY | ليس فقط CURLCLOSEPOLICY_LEAST_RECENTLY_USED أو CURLCLOSEPOLICY_OLDEST، بل هناك أيضًا ثلاثة CURLCLOSEPOLICY آخرين، ولكن CURL لا يدعمها حاليًا. | |
CURLOPT_CONNECTTIMEOUT | في انتظار بدء الاتصال، إذا تم تعيينه على 0، فسيكون الانتظار غير محدود. | |
CURLOPT_CONNECTTIMEOUT_MS | وقت محاولة الاتصال بالوقت، بالألفية من الثواني. إذا تم تعيينه على 0، فإنه ينتظر إلى الأبد. | تم إضافته في CURL 7.16.2. متاح من PHP 5.2.3. |
CURLOPT_DNS_CACHE_TIMEOUT | تحديد وقت الحفظ للمعلومات DNS في الذاكرة، والقيمة الافتراضية هي 120 ثانية. | |
CURLOPT_FTPSSLAUTH | طريقة التحقق من صحة FTP:CURLFTPAUTH_SSL (يحاول أولاً SSL)،CURLFTPAUTH_TLS (يحاول أولاً TLS) أوCURLFTPAUTH_DEFAULT (يقرر CURL بشكل تلقائي). | تم إضافته في CURL 7.12.2. |
CURLOPT_HTTP_VERSION | CURL_HTTP_VERSION_NONE (القيمة الافتراضية، يقرر CURL باستقلالية ما إذا كان يجب استخدام هذا الإصدار أو لا)،CURL_HTTP_VERSION_1_0 (استخدام HTTP/1.0 الإلزامي) أوCURL_HTTP_VERSION_1_1 (استخدام HTTP/1.1 الإلزامي). | |
CURLOPT_INFILESIZE | تحديد الحد الأقصى لحجم ملف التحميل، بالبتيات (بایت) | |
CURLOPT_LOW_SPEED_LIMIT | عندما يكون سرعة التحويل أقل منCURLOPT_LOW_SPEED_LIMITفي بيتا/ثانية، سيستخدم PHP بناءً علىCURLOPT_LOW_SPEED_TIMEلتحديد ما إذا كان التحويل بسبب البطء سيتم إلغاء | |
CURLOPT_LOW_SPEED_TIME | عندما يكون سرعة التحويل أقل منCURLOPT_LOW_SPEED_LIMITفي بيتا/ثانية، سيستخدم PHP بناءً علىCURLOPT_LOW_SPEED_TIMEلتحديد ما إذا كان التحويل بسبب البطء سيتم إلغاء | |
CURLOPT_MAXCONNECTS | عدد أكبر من الاتصالات المسموح به، إذا زاد عن ذلك سيتمCURLOPT_CLOSEPOLICYتحديد ما يجب وقف الاتصالات | |
CURLOPT_MAXREDIRS | تحديد عدد أكبر من التحويلات HTTP، هذا الخيار هو معCURLOPT_FOLLOWLOCATIONمعًا. | |
CURLOPT_PORT | لتحديد عدد المنفذ الاتصال. (اختياري) | |
CURLOPT_PROTOCOLS | CURLPROTO_*المنطقة المخصصة تشير إلى. إذا كانت مفعلة، فإن قيمة المنطقة المخصصة ستحدد ما هي البروتوكولات المتاحة لـ libcurl أثناء عملية التحويل. هذا سيسمح لك بدعم العديد من البروتوكولات عند تجميع libcurl، ولكن الحد هو فقط مجموعة فرعية من تلك المسموح باستخدامها. سيستخدم libcurl بشكل افتراضي جميع البروتوكولات التي يدعمها. انظرCURLOPT_REDIR_PROTOCOLSالخيارات المتاحة للبروتوكولات هي: CURLPROTO_HTTP،CURLPROTO_HTTPS،CURLPROTO_FTP،CURLPROTO_FTPS،CURLPROTO_SCP،CURLPROTO_SFTP،CURLPROTO_TELNET،CURLPROTO_LDAP،CURLPROTO_LDAPS،CURLPROTO_DICT،CURLPROTO_FILE،CURLPROTO_TFTP،CURLPROTO_ALL | تم إضافته في CURL 7.19.4. |
CURLOPT_PROTOCOLS | CURLPROTO_*المنطقة المخصصة تشير إلى. إذا كانت مفعلة، فإن قيمة المنطقة المخصصة ستحدد ما هي البروتوكولات المتاحة لـ libcurl أثناء عملية التحويل. هذا سيسمح لك بدعم العديد من البروتوكولات عند تجميع libcurl، ولكن الحد هو فقط مجموعة فرعية من تلك المسموح باستخدامها. سيستخدم libcurl بشكل افتراضي جميع البروتوكولات التي يدعمها. انظرCURLOPT_REDIR_PROTOCOLSالخيارات المتاحة للبروتوكولات هي: CURLPROTO_HTTP،CURLPROTO_HTTPS،CURLPROTO_FTP،CURLPROTO_FTPS،CURLPROTO_SCP،CURLPROTO_SFTP،CURLPROTO_TELNET،CURLPROTO_LDAP،CURLPROTO_LDAPS،CURLPROTO_DICT،CURLPROTO_FILE،CURLPROTO_TFTP،CURLPROTO_ALL | تم إضافته في CURL 7.19.4. |
CURLOPT_PROXYAUTH | طريقة التحقق من اتصال الوسيط HTTP.CURLOPT_HTTPAUTHبأعلام الحقول النصية لضبط الخيارات المختلفة. بالنسبة لتحقق الوسيط فقطCURLAUTH_BASICوCURLAUTH_NTLMيدعم حاليًا. | تم إضافته في CURL 7.10.7. |
CURLOPT_PROXYPORT | منفذ خدمة الوسيط. يمكن أيضًا ضبط المنفذ فيCURLOPT_PROXYفيه يتم ضبط. | |
CURLOPT_PROXYTYPE | ليسCURLPROXY_HTTP (القيمة الافتراضية) هوCURLPROXY_SOCKS5. | تم إضافة في CURL 7.10. |
CURLOPT_REDIR_PROTOCOLS | CURLPROTO_*فيه قيمته النصية. إذا تم تفعيلها، فإن القيمة النصية ستحدد ما يمكن استخدامها للتحويلات.CURLOPT_FOLLOWLOCATIONالسماح بالتتبع التلقائي للتحويلات عند التفعيل. سيجعل هذا يحدد مجموعة معينة من البروتوكولات التي يمكن استخدامها لتتبع التحويلات. سيتمكن libcurl بشكل افتراضي من استخدام جميع البروتوكولات باستثناء FILE و SCP. هذا يختلف عن إصدار 7.19.4 المسبق الذي يتبع جميع البروتوكولات المدعومة.CURLOPT_PROTOCOLS. | تم إضافته في CURL 7.19.4. |
CURLOPT_RESUME_FROM | إرسال إزاحة البايت الواحد (يستخدم للاستئناف التحميل). | |
CURLOPT_SSL_VERIFYHOST | 1 التحقق من وجود اسم عام (common name) في شهادة SSL للخادم. ملاحظة المترجم: اسم العام (Common Name) عادةً هو اسم النطاق (domain) أو اسم الفرعية النطاق (sub domain) الذي سوف تطالب بشهادة SSL. | |
CURLOPT_SSLVERSION | الإصدار المستخدم من SSL (2 أو 3). في الوضع الافتراضي، سينقوم PHP بتشخيص هذه القيمة، رغم أن بعض الحالات تتطلب ضبطها يدويًا. | |
CURLOPT_TIMECONDITION | إذا كانCURLOPT_TIMEVALUEوتم تعديلها بعد تاريخ معين محدد، فإنها تستخدمCURL_TIMECOND_IFMODSINCEالصفحة العائدة، إذا لم يتم تعديلها،CURLOPT_HEADERإذا كانت قيمتها true، فإنها تعود ب"304 لم يتم تعديلها"الـ header، CURLOPT_HEADERإذا كانت قيمتها false، فإنها تستخدمCURL_TIMECOND_IFUNMODSINCE، القيمة الافتراضية هيCURL_TIMECOND_IFUNMODSINCE. | |
CURLOPT_TIMEOUT | ضبط الوقت الأقصى الذي يمكن للـ CURL تنفيذة بالثواني. | |
CURLOPT_TIMEOUT_MS | ضبط الوقت الأقصى الذي يمكن للـ CURL تنفيذة بالمللي ثانية. | تم إضافته في CURL 7.16.2. يمكن استخدامه من PHP 5.2.3. |
CURLOPT_TIMEVALUE | ضبطCURLOPT_TIMECONDITIONاستخدام الوقت المحدد، في الوضع الافتراضي يستخدمCURL_TIMECOND_IFMODSINCE. |
للمواد الخيارية التالية، يجب تعيين القيمة كـ string.
خيار | اختياريالقيمةالقيمة | ملاحظة |
---|---|---|
CURLOPT_CAINFO | ملف يحتوي على شهادة واحدة أو أكثر لتحقق منها الخادم. هذا المعامل فقط له معنى عند استخدامه معCURLOPT_SSL_VERIFYPEER. | |
CURLOPT_CAPATH | مجلد يحتوي على عدة شهادات CA. هذا الخيار له معنى فقط عند استخدامه معCURLOPT_SSL_VERIFYPEERمعًا. | |
CURLOPT_COOKIE | تعيين HTTP request"Cookie: "جزء من المحتوى. يتم فصل الكوكيين بفاصلة محملة، يتبعها مسافة (مثل، "fruit=apple; colour=red)") | |
CURLOPT_COOKIEFILE | اسم ملف يحتوي على بيانات الكوكيز، يمكن أن يكون صيغة Netscape، أو مجرد إدخال معلومات رأس HTTP النقية في الملف. | |
CURLOPT_COOKIEJAR | ملف لتح Konservare cookie بعد انتهاء الاتصال. | |
CURLOPT_CUSTOMREQUEST | استخدام معلومات طلب مخصص بدلاً من"GET"أو"HEAD"كطلب HTTP. هذا يهم لتنفيذ"DELETE" أو أي طلب HTTP أكثر سرية."GET"،"POST"،"CONNECT"، إلخ. أي أن لا تدخل طلب HTTP كامل هنا. على سبيل المثال، أدخل"GET /index.html HTTP/1.0\r\n\r\n"غير صحيح. ملاحظة: لا تستخدمها حتى تُتأكد من أن الخادم يدعم هذه طريقة الطلب المخصصة. | |
CURLOPT_EGDSOCKET | مثلCURLOPT_RANDOM_FILE، باستثناء دائرة التجميع الإنتروبي لـ Daemon套كست. | |
CURLOPT_ENCODING | في رأس الطلب لـ HTTP"Accept-Encoding: "القيمة. الترميز المدعوم هو"identity"،"deflate"و"gzip"، إذا كان نصًا فارغًا""، سيتم إرسال جميع أنواع الترميز المدعومة. | تم إضافة في CURL 7.10. |
CURLOPT_FTPPORT | هذا القيمة سيتم استخدامها للحصول على عنوان IP المطلوب لاستخدام أوامر FTP "POST". أوامر "POST" تخبر الخادم عن بُعد بالاتصال بعنوان IP المحدد من قبلنا. يمكن أن يكون هذا النص عنوان IP النصي، اسم المضيف، اسم واجهة الشبكة (في UNIX) أو مجرد "-" لاستخدام عنوان IP الافتراضي. | |
CURLOPT_INTERFACE | اسم واجهة الشبكة المرسلة، يمكن أن يكون اسم واجهة أو عنوان IP أو اسم مستضيف. | |
CURLOPT_KRB4LEVEL | مستوى الأمان KRB4 (Kerberos 4). أي قيمة من القيم التالية صالحة (من منخفض إلى مرتفع):"clear"،"safe"،"confidential"،"private".. إذا لم يكن التوافق مع هذه الأنواع من الأنماط، سيتم استخدام"private". يتم تعيين هذا الخيار إلىNULLسيتم تعطيل التحقق من الأمان KRB4. في الوقت الحالي، يمكن استخدام KRB4 Security Authentication فقط للنقل FTP. | |
CURLOPT_POSTFIELDS | سيتم إرسال جميع البيانات باستخدام عملية "POST" في بروتوكول HTTP. إذا كنت ترغب في إرسال ملف، فأضف@الجزء الأمامي ويستخدم المسار الكامل. يمكن للمعامل هذا أن يكون شبهًا مثلpara1=val1¶2=val2&...استخدام 'أو قائمة باستخدام اسم الحقل كключ وبيانات الحقل كقيمة. إذاالقيمةوهي قائمة،Content-Typeسيتم تعيين رأسmultipart/form-data. | |
CURLOPT_PROXY | قناة الوسيط HTTP. | |
CURLOPT_PROXYUSERPWD | يُستخدم لـ"[username]:[password]"النصوص بتنسيق. | |
CURLOPT_RANDOM_FILE | اسم ملف سيتم استخدامه لإنشاء بذورSSL العشوائية. | |
CURLOPT_RANGE | ب"X-Y"بشكل، حيث X و Y هما خيارات اختيارية للنطاق الحاصل على البيانات، بمساحة البايت. يدعم سطر نقل HTTP أيضًا بعض هذه العناصر المتكررة المفصولة بالكوما مثل"X-Y,N-M". | |
CURLOPT_REFERER | في رأس الطلب HTTP"Referer: "المحتوى. | |
CURLOPT_SSL_CIPHER_LIST | قائمة من خوارزميات التشفير SSL. على سبيل المثالRC4-SHAوTLSv1كلها قوائم تشفير متاحة. | |
CURLOPT_SSLCERT | اسم ملف يحتوي على شهادة في تنسيق PEM. | |
CURLOPT_SSLCERTPASSWD | استخدامCURLOPT_SSLCERTكلمة المرور المطلوبة للشهادة. | |
CURLOPT_SSLCERTTYPE | نوع الشهادة. الدوال المدعومة تشمل"PEM" (القيمة الافتراضية), "DER"و"ENG". | تم إضافته في CURL 7.9.3. |
CURLOPT_SSLENGINE | يُستخدم لـCURLOPT_SSLKEYCURLOPT_SSLKEY | |
المتغير الذي يحدد محرك التشفير الخاص بالمفتاح الخاص SSL المحدد في | CURLOPT_SSLENGINE_DEFAULT | |
CURLOPT_SSLKEY | المتغير المستخدم لعمليات التشفير غير المتناظرة. | |
اسم الملف الذي يحتوي على المفتاح الخاص SSL. | CURLOPT_SSLKEYPASSWDCURLOPT_SSLKEYالمحدد في ملاحظة: بما أن هذا الخيار يحتوي على معلومات سرية مثل كلمة المرور، تأكد من أمان هذا النص البرمجي PHP. | |
CURLOPT_SSLKEYTYPE | CURLOPT_SSLKEYنوع التشفير لل私密 المحدد في"PEM"،(القيمة الافتراضية)、"DER"و"ENG". | |
CURLOPT_URL | عنوان URL المطلوب الحصول عليه، يمكن أيضًا تعيينه في دالة curl_init(). | |
CURLOPT_USERAGENT | إضافة"User-Agent: "الخط النصي للـ header. | |
CURLOPT_USERPWD | تقديم اسم المستخدم وكلمة المرور المطلوبة في الاتصال، بتنسيق:"[username]:[password]". |
بالنسبة للخيارات الاختيارية للـ option المذكورة أدناه، يجب تعيين value إلى مجموعة:
خيار | اختياريالقيمةالقيمة | ملاحظة |
---|---|---|
CURLOPT_HTTP200ALIASES | مجموعة رموز الاستجابة 200، حيث يتم اعتبار رموز الاستجابة في المجموعة صحيحة، وإلا يتم اعتبارها خطأ. | تم إضافته في CURL 7.10.3. |
CURLOPT_HTTPHEADER | مجموعة تستخدم لتعيين مجال HTTP الـ header. يتم تعيينها باستخدام شكل المجموعة التالي: array('Content-type: text/plain', 'Content-length: 100') | |
CURLOPT_POSTQUOTE | مجموعة أوامر FTP تُنفذ بعد تنفيذ طلب FTP. | |
CURLOPT_QUOTE | مجموعة أوامر FTP تُنفذ قبل طلب FTP على الخادم. |
بالنسبة للخيارات الاختيارية للـ option المذكورة أدناه، يجب تعيين value إلى موارد تدفق (مثل استخدام fopen()):
خيار | اختياريالقيمةالقيمة |
---|---|
CURLOPT_FILE | إعداد موقع ملف الإخراج، والقيمة هي نوع الموارد، والقيمة الافتراضية هي:STDOUT (المتصفح). |
CURLOPT_INFILE | عندما يتم رفع الملف يجب قراءة عنوان الملف، والقيمة هي نوع الموارد. |
CURLOPT_STDERR | إعداد عنوان الملف للإخراج الخطأ، والقيمة هي نوع الموارد، وتستبدل القيمة الافتراضية:STDERR. |
CURLOPT_WRITEHEADER | إعداد عنوان الملف المكتوب فيه جزء المحتوى في عنوان الرأس، والقيمة هي نوع الموارد. |
بالنسبة للخيارات الاختيارية للـ option المذكورة أدناه، يجب تعيين value إلى اسم دالة استدعاء:
خيار | اختياريالقيمةالقيمة |
---|---|
CURLOPT_HEADERFUNCTION | إعداد دالة تدعيمية، تحتوي على معلمتين، الأولى هي معالج CURL، الثانية هي البيانات المطلوبة من العنوان. يجب أن تعتمد مخرجات هذا الدالة على هذا الدالة، وتعود حجم البيانات التي تم كتابتها. |
CURLOPT_PASSWDFUNCTION | إعداد دالة تدعيمية، ثلاثة معلمات، الأولى هي معالج CURL، الثانية هي مؤشر إلى نص التسجيل، الثالثة هي الحد الأقصى للطول المسموح به لنص التسجيل. يعود قيمة النص. |
CURLOPT_PROGRESSFUNCTION | إعداد دالة تدعيمية، ثلاثة معلمات، الأولى هي معالج CURL، الثانية هي مورد ملفوصف، الثالثة هي الطول. يعود البيانات المضمنة. |
CURLOPT_READFUNCTION | اسم الدالة التدعيمية. يجب أن تأخذ الدالة ثلاثة معلمات. الأولى هي مورد CURL؛ الثانية هي المعلمة التي تم تحديدها من خلال الخيار CURLOPT_INFILE المورد المرسل إلى CURL؛ المعلمة الثالثة هي كمية البيانات القابلة للقراءة القصوى. يجب أن يجب أن يعود الدالة التدعيمية النص، طولها أقل أو يساوي كمية البيانات المطلوبة (المعلمة الثالثة). عادة يتم قراءة البيانات من قراءة resource. يعود نص فارغ كإشارة. EOFإشارة (نهاية ملف). |
CURLOPT_WRITEFUNCTION | اسم الدالة التدعيمية. يجب أن تأخذ الدالة إثنين من المعلمات. الأولى هي مورد CURL؛ الثانية هي النص المطلوب كتابته. النص المعلومات يجب أن يتم حفظها داخل الدالة. يجب أن تعود الدالة بالعدد الدقيق من الأحرف التي يتم كتابتها، وإلا سيتم قطع التحميل بسبب خطأ. قطع. |
يعود TRUE عند النجاح، أو FALSE عند الفشل.
الإصدار | الشرح |
---|---|
5.2.10 | الإدخال CURLOPT_PROTOCOLS , وCURLOPT_REDIR_PROTOCOLS . |
5.1.0 | الإدخال CURLOPT_AUTOREFERER ,CURLOPT_BINARYTRANSFER ,CURLOPT_FTPSSLAUTH ,CURLOPT_PROXYAUTH , وCURLOPT_TIMECONDITION . |
5.0.0 | الإدخال CURLOPT_FTP_USE_EPRT ,CURLOPT_NOSIGNAL ,CURLOPT_UNRESTRICTED_AUTH ,CURLOPT_BUFFERSIZE ,CURLOPT_HTTPAUTH ,CURLOPT_PROXYPORT ,CURLOPT_PROXYTYPE ,CURLOPT_SSLCERTTYPE , وCURLOPT_HTTP200ALIASES . |
إعداد جلسة CURL جديدة واستخراج صفحة
<?php // إنشاء موارد CURL جديدة $ch = curl_init(); // تعيين URL والخيارات المشار إليها curl_setopt($ch, CURLOPT_URL, "http://ar.oldtoolbag.com/"); curl_setopt($ch, CURLOPT_HEADER, false); // سحب URL وإيصالها إلى المتصفح curl_exec($ch); // إغلاق موارد CURL وإطلاق موارد النظام curl_close($ch); ?>
مثال على رفع ملفات:
<?php /* http://localhost/upload.php: print_r($_POST); print_r($_FILES); */ $ch = curl_init(); $data = array('name' => 'Foo', 'file' => '@/home/user/test.png'); curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php'); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_exec($ch); ?>
نتائج المثال أعلاه كالتالي:
Array ( [اسم] => Foo ) Array ( [ملف] => Array ( [اسم] => test.png [نوع] => image/png [اسم مؤقت] => /tmp/phpcpjNeQ [خطأ] => 0 [حجم] => 279 ) )
تمرير مصفوفة إلى CURLOPT_POSTFIELDS، سيقوم CURL بت编码 البيانات إلى multipart/form-data، أما إذا تم تمرير سلسلة URL-encoded، سيتم ترميز البيانات إلى application/x-www-form-urlencoded.