2012-07-22 24 views
14

Tôi cần tải lên nhiều tệp lên máy chủ bằng tiện ích dòng lệnh curl. cho một tệp tôi không gặp sự cố khi sử dụng:tải nhiều tệp lên máy chủ php bằng dòng lệnh curl

curl -F "[email protected]" http://localhost:8888/web/Upload.php 

làm cách nào để thực hiện việc này với nhiều tệp để biến php $ _FILES ["image"] ["error"] trả về mảng?

Tôi đã thử

curl -F "[email protected]" -F "[email protected]" http://localhost:8888/web/Upload.php 
curl -F "[email protected],[email protected]" http://localhost:8888/web/Upload.php 

nhưng đây là một đâm trong bóng tối.

Trả lời

30

Bí quyết là đặt tên cho các thông số tải lên tệp duy nhất.

curl -F "[email protected]" -F "[email protected]" http://localhost:8888/web/Upload.php 

này sẽ hiển thị trong $_FILES superglobal như $_FILES['image']$_FILES['image2'].

Để làm cho các tập tin được nhóm lại dưới một $_FILES chỉ số bạn cần đặt tên cho các thông số như mảng:

curl -F "image[][email protected]" -F "image[][email protected]" http://localhost:8888/web/Upload.php 
+0

Thật sự tôi đã thấy trang sau http://php.net/manual/en/features. file-upload.multiple.php cho thấy bạn có thể tải lên dưới dạng ảnh mảng [] ["lỗi"]. tôi đã tự hỏi nếu đó là có thể từ curl – sapatos

+0

này chỉ là để thử nghiệm một dịch vụ web sẽ được sử dụng bởi một ứng dụng iphone. nó sẽ tải một số hình ảnh cùng một lúc – sapatos

+0

Ồ, có thể đạt được curl phù thủy nếu bạn đặt tên cho các tham số là mảng. Đã cập nhật ví dụ. – complex857

Các vấn đề liên quan