У меня возникли проблемы с отправкой данных формы через CURL получающему PHP script, расположенному на другом узле.
Я получаю ошибку Array to string conversion
Это print_r
массива, который я публикую:
Array
(
[name] => Array
(
[0] => Jason
[1] => Mary
[2] => Lucy
)
[id] => 12
[status] => local
[file] => @/test.txt
)
Это строка, в которой происходит ошибка:
curl_setopt($this->ch, CURLOPT_POSTFIELDS, $post);
Третий аргумент должен быть массивом, потому что мне нужно, чтобы заголовок Content-Type
был установлен в multipart/form-data
, поскольку я отправляю файл через этот же массив, поэтому я не могу преобразовать массив в строку запроса или использовать http_build_query()
.
Также у меня нет доступа к коду на принимающем хосте, поэтому я не могу сериализовать и неэтериализовать массив.
Я предполагаю, что значение ключа имени, являющегося массивом, является причиной этой ошибки, я также предполагаю, что CURLOPT_POSTFIELDS
не поддерживает многомерные массивы. Есть ли другой способ обойти это или я обречен?
Спасибо заранее!