Добрый день, не могу не как разобраться как парсить yml коталог формата яндекс маркета.
В целом ситуация такая: Есть файл каталог весом около 130 мб, в котором присутсвуют множество категорий, хотелось бы записать его в БД с разделением каждой отдельной категории на таблицу, проблема еще в том что хостинг выделяет под обработку только 67 мб
Как минимум проверить расширение файла, после этого поробовать открыть его как архив, через библиотеку ZipArchive. Если во время открытия возникнет ошибка выбросить исключение.
Okula пишет:
Можно код к примеру, я все такие не мастер в этом =) (Добавление)
re_nat пишет:
HP:
скопировать код в буфер обмена
$inf=pathinfo($file);
if($inf['extension']==='zip')
{
блаблабла
}
#$inf['extension'] - ни что иное как строка, содержащая расширение файла
Окей, а продолжение? При выполнении условия как начать распаковку? Можно код на извлечение во временную папку? (Добавление)
Пока помскал по гуглу яндекску, честно примеры не совсем те, нужно что то простое что просто распакует файл zip в папку и все
Если файл zip то распаковать его, можно в отдельную папку, после взять файл из этой папки и дальше работать с ним после завершения удалить временную папку с файлом, и соответственно если файл не zip то сразу работать с файлом
Остается 8 слов в некоторых строках, общий вид: слово слово слово.слово слово-слово слово слово
Не пойму где в функции надо вписывать эти символы? (Добавление)
Хотя понял если еще одним реплейсом заменить точки и тире пробелами то может получиться, но это изменит общий вид.
Сделал так все равно остаются строки по 8 слов, слова кстати некоторые в верхнем регстроре, некоторые в нижнем и некоторые комбинированные.
Как я понил тутнужно 2 условия с регулярками, и при их выполнении использовать еще 2 регулярки, но только я вообще не понимаю как пользоваться этими регулярками.....
(Добавление)
В целом стала еще одна проблема - фразы которые выводятся из названий, нужно чтобы они были не более 7 символов, если их больше то последние слова должны отразиться и выводиться только первые 7.
Словами могут считаться даже просто цифры или знаки даже если они имеют всего 1 символ (Добавление)
еще бы не плохо если бы из строк вырезались кавычки - как двойные там одинарные, знаки плюсов и запятые, кончено вырезаться они должны до того как начнется проверка на количество слов в строке (Добавление)
При том если в фразе есть такая конструкция слово-слово или слово-цыфра то это считается за 1 слово и тире тут конечно вырезать не надо, а вот скобки как раз таки не нужны