Curl, многомерные массивы и передача файлов

Задача: из кода на PHP передать веб-службе файл с помощью curl.

Решение: Curl, многомерные массивы и передача файлов

upd: начиная с php 5.5 работа с файлами изменилась:

if ((version_compare(PHP_VERSION, '5.5') >= 0)) {
foreach ($requestVars AS $k=>$v) {
if (strpos($v, '@') === 0) {
$requestVars[$k] = new \CURLFile(str_replace('@', '', $v));
}
}
}