2011-02-01 14 views
5

मैं एक लंबी स्क्रिप्ट चला रहा हूं जो निर्दिष्ट डोमेन की सामग्री प्राप्त करता है और एचटीएमएल पर परीक्षणों की श्रृंखला चलाने से पहले एचटीएमएल को पार करता है। वैसे भी स्क्रिप्ट समय थोड़ी देर के बाद बाहर। मैं अपने पेज के शीर्ष पर इस डाल की कोशिश की लेकिन फिर भी प्रयास विफल:PHP में कर्ल समय सीमा को कैसे हटाएं?

set_time_limit(0); 

यहाँ प्रश्न में त्रुटि है:

cURL error number:28 
cURL error:Operation timed out after 10000 milliseconds with 316183 out of 6476018 bytes received 

उत्तर

22

आप राशि समय की कर्ल अपने अभियान को पूरा करने के हो जाता है निर्धारित करने की आवश्यकता curl_setopt के साथ।

CURLOPT_TIMEOUT सेटिंग विशिष्ट होने के लिए।

curl_setopt($ch, CURLOPT_TIMEOUT, 400); // the timeout in seconds 

http://www.php.net/manual/en/function.curl-setopt.php

1

एक उच्च मूल्य के लिए Set CURLOPT_TIMEOUT

+0

एक उच्च मूल्य के लिए CURLOPT_TIMEOUT स्थापना समय सीमा नहीं निकाला जाएगा। इसे शून्य (0) पर सेट करना होगा। यह CURLOPT_TIMEOUT_MS के लिए भी जाता है। (स्रोत: http://curl.haxx.se/libcurl/c/CURLOPT_TIMEOUT.html/http://curl.haxx.se/libcurl/c/CURLOPT_TIMEOUT_MS.html) –

4

curl_setopt() के साथ CURLOPT_TIMEOUT विकल्प का उपयोग करें।

curl_setopt($curl, CURLOPT_TIMEOUT, 0); // zero waits indefinitely 

set_time_limit() केवल यह निर्धारित करता है कि स्क्रिप्ट कितनी देर तक चल सकती है। आपके पास जो समस्या है वह एक कर्ल टाइमआउट है।

http://php.net/curl-setopt

+0

CURLOPT_CONNECTTIMEOUT \t कोशिश करते समय प्रतीक्षा करने के लिए सेकंड की संख्या संपर्क करना। अनिश्चित काल तक प्रतीक्षा करने के लिए 0 का प्रयोग करें। वीएस CURLOPT_TIMEOUT \t curl फ़ंक्शन निष्पादित करने की अनुमति देने के लिए सेकंड की अधिकतम संख्या। – profitphp

+0

@profitphp: लेकिन जहां तक ​​मैनुअल का सवाल है, वहां 'CURLOPT_TIMEOUT' जैसे कोई विकल्प नहीं है। – Jonah

+0

आगे पढ़ें ... – profitphp

संबंधित मुद्दे