Nó tầm thường để lấy hình ảnh từ máy chủ nhưng tôi nghĩ về một điều gì đó khác biệt. Đó là câu hỏi điên rồ nhưng ... Có thể gửi tệp (hình ảnh) đến máy chủ nhưng không sử dụng tải lên biểu mẫu hoặc kết nối ftp không? Tôi muốn gửi yêu cầu đến ví dụ. http://www.example.com/file.php với nội dung nhị phân. Tôi nghĩ rằng tôi cần phải đặt hình ảnh tiêu đề kiểu nội dung/jpeg nhưng làm cách nào để thêm một số nội dung vào yêu cầu của tôi?CURL PHP gửi hình ảnh
17
A
Trả lời
10
thấy http://docs.php.net/function.curl-setopt:
CURLOPT_POSTFIELDS Các dữ liệu đầy đủ để viết trong một HTTP "POST" hoạt động. Để đăng một tệp, hãy thêm tên tệp bằng @ và sử dụng đường dẫn đầy đủ. Điều này có thể được chuyển thành chuỗi url được mã hóa như 'para1 = val1 & para2 = val2 & ...' hoặc dưới dạng mảng với tên trường là dữ liệu khóa và trường làm giá trị. Nếu giá trị là một mảng, tiêu đề Loại nội dung sẽ được đặt thành nhiều phần/biểu mẫu dữ liệu.
16
có nhiều cách để sử dụng curl để tải lên tập tin hình ảnh, ví dụ:
$ch = curl_init();
$data = array('name' => 'Foo', 'file' => '@/path/to/image.jpeg');
curl_setopt($ch, CURLOPT_URL, 'http://localhost/upload.php');
curl_setopt($ch, CURLOPT_POST, 1);
//CURLOPT_SAFE_UPLOAD defaulted to true in 5.6.0
//So next line is required as of php >= 5.6.0
curl_setopt($ch, CURLOPT_SAFE_UPLOAD, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_exec($ch);
bạn có thể kiểm tra các ví dụ tại địa chỉ: http://au.php.net/manual/en/function.curl-setopt.php
0
VolkerK là hoàn toàn đúng, nhưng kinh nghiệm của tôi cho thấy rằng việc gửi một tập tin " Toán tử @ "sẽ chỉ hoạt động với các mảng.
$post['file'] = "@FILE_Path"
Bây giờ bạn có thể gửi các tập tin sử dụng CURLOPT_POSTFIELDS
+0
Phương pháp này không còn được khuyến nghị. Xem: http://php.net/manual/en/class.curlfile.php – Erik
Các vấn đề liên quan
- 1. Lưu hình ảnh từ URL bằng cURL
- 2. Xem những gì CURL gửi từ tập lệnh PHP
- 3. PHP: Xác định hình ảnh bị hỏng hình ảnh (chưa hợp lệ) được tải xuống qua Curl với GD/Imagemagick
- 4. PHP Curl CURLOPT_IPRESOLVE
- 5. Tạo album Picasa và tải hình ảnh lên đó bằng PHP và cURL
- 6. Dịch dòng lệnh cURL vào PHP cURL
- 7. pixel hình ảnh PHP?
- 8. Trang Android Hoạt ảnh curl
- 9. curl --định nghĩa tương đương trong thư viện CURL PHP
- 10. Xuất hình ảnh thô từ hình ảnh Imagick trong PHP
- 11. Gửi nhiều hình ảnh với AFNetworking
- 12. Gửi hình ảnh nội tuyến qua email
- 13. PHP cURL chỉ yêu cầu gửi và không chờ phản hồi
- 14. Curl PHP với cờ --data?
- 15. php curl với lỗi CURLOPT_FOLLOWLOCATION
- 16. CURL không lưu cookie (PHP)
- 17. PHP CURL CURLOPT_SSL_VERIFYPEER bỏ qua
- 18. Tự động gửi biểu mẫu (cURL)
- 19. Gửi/Hiển thị hình ảnh được mã hóa base64 Hình ảnh
- 20. PHP: chuyển tiếp curl và luồng
- 21. cách gửi email HTML có hình ảnh đính kèm bên trong với PHP
- 22. Gửi email bằng PHPMailer - nhúng hình ảnh vào nội dung
- 23. Mở rộng PHP "curl" phải được tải
- 24. Tôi làm cách nào để gửi cookie bằng cách sử dụng PHP curl ngoài CURLOPT_COOKIEFILE?
- 25. Tại sao không curl gửi tiêu đề của tôi trong PHP?
- 26. vbulletin đăng bài đăng với CURL và PHP
- 27. PHP cURL Không hoạt động với HTTPS
- 28. cURL và PHP hiển thị "1"
- 29. PHP cURL không thấy tệp/etc/hosts
- 30. tải hình ảnh lên hình ảnh với djangorestframework bằng cách sử dụng json và kiểm tra điều này với CURL
Đây là những gì tôi đang tìm kiếm. Cảm ơn! –
Cảm ơn bạn như một ví dụ hoàn chỉnh và súc tích! –
CURLOPT_SAFE_UPLOAD được mặc định là true trong 5.6.0 ... vì vậy bạn sẽ cần thêm curl_setopt ($ ch, CURLOPT_SAFE_UPLOAD, false); trước khi đặt CURLOPT_POSTFIELDS. – muglio