13.2 Eine URL mit der POST-Methode abrufen
Problem
Sie möchten eine URL mit der POST-Methode auslesen und nicht mit der standardmäßigen GET-Methode. Beispielsweise möchten Sie ein HTML-Formular abschicken.
Lösung
Verwenden Sie file_get_contents()
mit einem Stream-Kontext:
$body = http_build_query(array("affe" => "onkel", "nashorn" => "tante")); $contextOptions = array( "http" => array ( "method" => "POST", "header" => "Content-type: application/x-www-form-urlencoded\r\n" . "Content-length: " . strlen($body) . "\r\n", "content" => $body ) ); $context = stream_context_create($contextOptions); $page = file_get_contents("http://www.example.com/submit.php", false, $context);
Etwas kürzer: Verwenden Sie die cURL-Erweiterung und setzen Sie die Option CURLOPT_POST ...
Get PHP 5 Kochbuch, Third Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.