Memuat naik Fail melalui cURL dalam PHP
Masalah
Mengendalikan muat naik fail daripada POST borang dalam PHP dan menghantarnya menggunakan cURL boleh mencabar. Borang HTML menggunakan pengekodan data berbilang bahagian/borang, tetapi format yang tepat untuk memuat naik fail dalam permintaan cURL masih tidak jelas.
Penyelesaian
Untuk memuat naik fail menggunakan cURL dalam PHP, ikuti langkah berikut:
Mencipta Permintaan cURL
<?php // Define the file to be uploaded $fileKey = 'image'; $tmpFile = $_FILES[$fileKey]['tmp_name']; $fileName = $_FILES[$fileKey]['name']; // Initialize cURL $ch = curl_init(); // Set cURL options curl_setopt_array($ch, [ CURLOPT_URL => 'https://your-api-endpoint.com', // Replace with your API endpoint CURLOPT_USERPWD => 'username:password', // Replace with your API credentials CURLOPT_UPLOAD => true, CURLOPT_INFILE => fopen($tmpFile, 'r'), // Open the file for reading CURLOPT_INFILESIZE => filesize($tmpFile), ]); **Sending the Request** // Execute the cURL request $response = curl_exec($ch); if (curl_errno($ch)) { echo 'Error sending file: ' . curl_error($ch); } else { // Handle the response echo 'File uploaded successfully.'; } // Close the cURL connection curl_close($ch); ?>
Menerima Fail
Untuk yang menerima skrip (curl_receiver.php), anda boleh menggunakan kod berikut:
<?php // Get the file data $file = fopen('php://input', 'rb'); // Save the file to a temporary location $tempFile = tempnam(sys_get_temp_dir(), 'file'); file_put_contents($tempFile, $file); // Do something with the file // ... // Clean up fclose($file); unlink($tempFile); ?>
Dengan menggunakan langkah ini, anda boleh berjaya memuat naik fail daripada POST borang dalam PHP menggunakan cURL.
Atas ialah kandungan terperinci Bagaimana untuk Memuat naik Fail melalui cURL dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!