Verwalten der Curl-Ausgabe in PHP


77

Wie verstecke ich die Ausgabe von Curl in PHP?

Mein aktueller Code lautet wie folgt:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_USERPWD, PSSWDINFO);
$result= curl_exec ($ch);
curl_close ($ch);

Das Problem ist, dass die gesamte Seite ausgespuckt wird. Wie kann ich einfach eine "Erfolg" - oder "Fehlgeschlagen" -Nachricht anzeigen?

Antworten:


195

Verwenden Sie diese Option, um curl_setopt():

curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

Dadurch werden curl_execdie Daten zurückgegeben, anstatt sie auszugeben.

Um zu sehen, ob es erfolgreich war, können Sie dann überprüfen $resultund auch curl_error().


Ich habe von stackoverflow.com/a/18203696/2495584 gelesen, dass 1 als zweiter Parameter verwendet wird. Welches ist das bessere?
Gellie Ann

0 / False und 1 / True sind als boolesche Datentypen austauschbar. Also, es ist genau das Gleiche, treffen Sie Ihre Wahl.
Mrpatg

17

Stellen Sie außerdem sicher, dass diese Option deaktiviert ist:

curl_setopt($ch, CURLOPT_VERBOSE, 0);       

Andernfalls wird immer noch alles auf dem Bildschirm gedruckt.


1
else it will still print everything to screen- Nein, das wird es nicht. CURLOPT_VERBOSE ist standardmäßig 0 und war es schon immer.
Hanshenrik
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.