Нужен совет по обработке сравнительно большого количества данных.
Есть скрипт, который готовит xml-файл для выгрузки объявлений в один сервис. Скрипт работает нормально, но в его конце есть особо важный момент - обработка файлов-изображений и отправка их на удаленный сервер (для публикации на сайте). Почему на удаленный, спросите вы? По отслеживанию времени загрузки, если на сайте публиковать изображения, размещенные на сервере, где исполняется скрипт, загрузка этих изображений довольно долгая. Поэтому решено было перемещать их на сервер сайта. Для перемещения использую cUrl:
$uploadRequest = $picsArr;
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'https://domain/actions/controllers/RemoteImgReceiver.php');
curl_setopt($curl, CURLOPT_FOLLOWLOCATION,1);
curl_setopt($curl, CURLOPT_TIMEOUT, 20);
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($uploadRequest));
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
$output = curl_exec($curl);
$httpcode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
$info = curl_getinfo($curl);
curl_close($curl);
В массиве $uploadRequest набор массивов, каждый из которых содержит имя файла и его base64 представление:
array(
array(
name: 'file',
base64: '...'
),
...
)
В одном объявлении собирается до 40 изображений (массив "весит" примерно 8Мб) и передается указанным выше cUrl`ом.
Объявлений примерно 400. В итоге передача занимает безумное количество времени. Есть ли более оптимальные методы передачи файлов на удаленный сервер?
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Имеется таблица, которая отрисовывается горизонтальноМне нужно переносить оба ряда на новую строку, если в ряде больше 7 ячеек
При импорте товаров в WC столкнулся со следующей проблемой: необходимо создать на новом сайте атрибуты и их значения для товаровВся сложность...