के माध्यम से PHP में पुनर्प्राप्ति वास्तव में मेरे पास दो प्रश्न हैं।हेडर केवल कर्ल
(1) वहाँ अगर मैं केवल शीर्ष लेख के रूप php और कर्ल का उपयोग कर पूरे पृष्ठ पुनः प्राप्ति के लिए विरोध को पुनः प्राप्त दूरस्थ सर्वर पर इस्तेमाल किया प्रसंस्करण शक्ति या बैंडविड्थ में कोई कमी है?
(2) के बाद से मुझे लगता है कि, और मैं गलत हो सकता है, पहले सवाल है कि इसका जवाब हाँ, मैं पिछले संशोधित तिथि या प्राप्त करने के लिए कोशिश कर रहा हूँ है-संशोधित- क्योंकि दूरस्थ फ़ाइल के हेडर केवल आदेश की तुलना करने में यह स्थानीय रूप से संग्रहीत डेटा की समय-सारिणी के साथ, इसलिए, यदि यह बदल दिया गया है, तो इसे स्थानीय रूप से स्टोर कर सकते हैं। हालांकि, मेरी स्क्रिप्ट की जानकारी के उस टुकड़े प्राप्त नहीं कर पा रहा है, मैं NULL
मिलता है, जब मैं इस चलाएँ:
class last_change {
public last_change;
function set_last_change() {
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "http://url/file.xml");
curl_setopt($curl, CURLOPT_HEADER, true);
curl_setopt($curl, CURLOPT_FILETIME, true);
curl_setopt($curl, CURLOPT_NOBODY, true);
// $header = curl_exec($curl);
$this -> last_change = curl_getinfo($header);
curl_close($curl);
}
function get_last_change() {
return $this -> last_change['datetime']; // I have tested with Last-Modified & If-Modified-Since to no avail
}
}
मामले $header = curl_exec($curl)
में uncomented, हैडर डेटा प्रदर्शित किया जाता है, भले ही मैं यह अनुरोध नहीं किया है और है निम्नानुसार:
HTTP/1.1 200 OK
Date: Fri, 04 Sep 2009 12:15:51 GMT
Server: Apache/2.2.8 (Linux/SUSE)
Last-Modified: Thu, 03 Sep 2009 12:46:54 GMT
ETag: "198054-118c-472abc735ab80"
Accept-Ranges: bytes
Content-Length: 4492
Content-Type: text/xml
उस पर आधारित, 'अंतिम-संशोधित' वापस आ गया है।
तो, मैं गलत क्या कर रहा हूं?
उल्लेखनीय यह है कि इसके बाद के संस्करण कोड किसी भी हेडर नहीं लौटेगा है , बस जानकारी vars। शीर्षलेखों को पुनर्प्राप्त करने के लिए आपको 'curl_setopt ($ curl, CURLOPT_HEADER, true) जोड़ने की आवश्यकता है; '। हेडर पतले पाठ रूप में आते हैं और बाद में पार्स किए जाने की आवश्यकता होती है। – Lukas