Загрузить несколько файлов на php-сервер с помощью командной строки curl

Мне нужно загрузить несколько файлов на сервер с помощью утилиты командной строки curl. для одного файла у меня нет проблем с использованием:

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

как мне сделать это с несколькими файлами, чтобы переменная php $_FILES [ "image" ] [ "error" ] вернула массив?

Я пробовал

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

но это удар в темноте.

Ответ 1

Хитрость заключается в том, чтобы назвать параметры загрузки файлов уникальными.

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

Это будет отображаться в $_FILES суперглобале как $_FILES['image'] и $_FILES['image2'].

Чтобы сделать файлы сгруппированными под одним индексом $_FILES, вам нужно указать параметры как массивы:

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