victorzadorozhnyy
@victorzadorozhnyy

Как долго может фильтроваться такой файл?

Есть плагин для wp который должен старую бд магазина импортировать в новый на woo. Там два csv документа первый 75 000(10 столбцов) и второй 22 000(два столбца) из них делаю два arrey и нужно их пропустить через фильтр
//Вспомогательная функция которая ищет пару записей относящихся к одному товару
function searchForSku($sku, $array) {
    foreach ($array as $key => $val) {
        if ($val['sku'] === $sku) {
            return $key;
        }
    }
    return null;
}

function sort_this( $arr, $ar ){
$array_sort = array();

    foreach ( $ar as $array ) {
        $i = searchForSku( $array['sku'], $arr );

        if( $i != null) {
            $result =  array($array_sort[ $array[ 'sku' ] ] =>  array_merge( $arr[$i] , array('description' => $array['description'] ) ) );

            array_push($array_sort, $result);
        }

    }
//Ответа долго нету
    $t = $array_sort;

    file_put_contents('theArray.txt', var_export($t, true));
    // сдесь прерываю и хочу все записать
    //img_exist( $array_sort );
}

Сколько такое в теории может занять и как можно ускорить?
  • Вопрос задан
  • 118 просмотров
Пригласить эксперта
Ответы на вопрос 1
iit
@iit
TeamLead + php/js разработчик
Время зависит от производительности сервера, но одно скажу точно - достаточно, чтобы отвалиться по timeout.
У меня была похожая задача, правда был один xml а не два csv, в итоге я загнал данные в postgres и уже там обрабатывал sql запросами.

searchForSku можно заменить простой конструкцией
array_search($sku, array_column($array,'sku')) если php > 5.5.0
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы