Heim >Backend-Entwicklung >PHP-Tutorial >Wie lade ich Dateien mit cURL in PHP hoch?

Wie lade ich Dateien mit cURL in PHP hoch?

Barbara Streisand
Barbara StreisandOriginal
2024-12-31 20:07:101024Durchsuche

How to Upload Files Using cURL in PHP?

Dateien mit cURL in PHP hochladen

Um eine Datei in PHP mit cURL hochzuladen, befolgen Sie diese Schritte:

1. Erstellen Sie ein cURL-Dateiobjekt

Verwenden Sie für PHP 5.5 und höher „curl_file_create“, um ein cURL-Dateiobjekt zu erstellen:

if (function_exists('curl_file_create')) { // php 5.5+
  $cFile = curl_file_create($file_name_with_full_path);
}

Für frühere PHP-Versionen verwenden Sie:

$cFile = '@' . realpath($file_name_with_full_path);

2. Bereiten Sie die POST-Daten vor

Packen Sie das Dateiobjekt und alle zusätzlichen Formulardaten in ein POST-Array:

$post = array('extra_info' => '123456', 'file_contents' => $cFile);

3. Initialisieren Sie die cURL-Sitzung

$ch = curl_init();

4. Legen Sie die cURL-Optionen fest

Konfigurieren Sie die cURL-Sitzungsoptionen:

curl_setopt($ch, CURLOPT_URL, $target_url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);

5. Führen Sie die Anfrage aus

Senden Sie die Datei mit cURL:

$result = curl_exec ($ch);

6. Schließen Sie die cURL-Sitzung

curl_close ($ch);

Wichtiger Hinweis für PHP 5.5 und höher:

Im bereitgestellten Beispiel werden veraltete Dateiverarbeitungsmethoden verwendet. Aktuelle Vorgehensweisen finden Sie in der PHP-Dokumentation: https://wiki.php.net/rfc/curl-file-upload

Das obige ist der detaillierte Inhalt vonWie lade ich Dateien mit cURL in PHP hoch?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn