verwenden Sie cURL zu bekommen HTTP-header und speichern Sie Sie auf variable
Ich bin mit diesem schnappen Sie sich einen XML-feed und die HTTP-Header
//Initiate the curl session
$ch = curl_init();
//Set the URL
curl_setopt($ch, CURLOPT_URL, $url);
//Allow the headers
curl_setopt($ch, CURLOPT_HEADER, true);
//Return the output instead of displaying it directly
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
//Execute the curl session
$output = curl_exec($ch);
//Close the curl session
curl_close($ch);
//Cache feed
file_put_contents($filename, $output);
//XML to object
$output = simplexml_load_string($output);
//Return the output as an array
return $output;
Und es gibt diese Header
HTTP/1.1 200 OK
Cache-Control: public, max-age=30
Content-Length: 5678
Content-Type: text/xml
Expires: Tue, 22 Nov 2011 15:12:16 GMT
Last-Modified: Tue, 22 Nov 2011 15:11:46 GMT
Vary: *
Server: Microsoft-IIS/7.0
Set-Cookie: ASP.NET_SessionId=1pfijrmsqndn5ws3124csmhe; path=/; HttpOnly
Data-Last-Updated: 11/22/2011 15:11:45
X-AspNet-Version: 4.0.30319
X-Powered-By: ASP.NET
Date: Tue, 22 Nov 2011 15:11:46 GMT
Ich nur zurückgeben soll ein Teil der HTTP-header, die
Expires: Tue, 22 Nov 2011 15:12:16 GMT
ein und speichern Sie in eine variable, wie mache ich das? Ich habe auf der Suche durch das PHP-Handbuch kann aber nicht
- Teilen Sie die text-auf-newline, in einer Schleife durch alle Zeilen, bis Sie auf eine Zeichenfolge, die beginnt mit "Expires:" -, Schnitt-die ersten 9 Zeichen und du hast deine Antwort.
Du musst angemeldet sein, um einen Kommentar abzugeben.
sm
Modifikatoren und die Klammern notwendig?Können Sie unter Verwendung der PHP-get_headers($url, 1) - Funktion gibt alle header-Informationen in einem array, und wenn Sie den optionalen zweiten Parameter auf 1 (nicht null), dann analysiert er in ein assoziatives array wie:
http://php.net/manual/en/function.get-headers.php