Dateien mit PHP und cURL hochladen
Diese Frage untersucht, wie man Dateien mit PHP, insbesondere mit cURL, hochlädt. Der Benutzer sendet eine Datei über ein Formular an ein PHP-Skript, das sie dann an ein anderes Skript weiterleiten muss. Der zum Empfangen und Hochladen der Datei bereitgestellte PHP-Code lautet wie folgt:
echo"".$_FILES['userfile'].""; $uploaddir = './'; $uploadfile = $uploaddir . basename($_FILES['userfile']['name']); if ( isset($_FILES["userfile"]) ) { echo '<p><font color="#00FF00" size="7">Uploaded</font></p>'; if (move_uploaded_file ($_FILES["userfile"]["tmp_name"], $uploadfile)) echo $uploadfile; else echo '<p><font color="#FF0000" size="7">Failed</font></p>'; }
So senden Sie die Datei mit cURL an den Empfängerserver:
if (function_exists('curl_file_create')) { // php 5.5+ $cFile = curl_file_create($file_name_with_full_path); } else { // $cFile = '@' . realpath($file_name_with_full_path); } $post = array('extra_info' => '123456','file_contents'=> $cFile); $ch = curl_init(); curl_setopt($ch, CURLOPT_URL,$target_url); curl_setopt($ch, CURLOPT_POST,1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); $result=curl_exec ($ch); curl_close ($ch);
Zusätzlich Ressourcen:
Hinweis für PHP 5.5:
In PHP 5.5 wird empfohlen, für Datei-Uploads den neueren RFC „curl_file_upload“ zu verwenden. Wenn Sie jedoch den veralteten Ansatz verwenden, stellen Sie sicher, dass curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false); ist eingestellt.
Das obige ist der detaillierte Inhalt vonWie kann ich Dateien mit PHP und cURL hochladen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!