- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Все что нужно знать о DDоS-атаках грамотному менеджеру
И как реагировать на "пожар", когда неизвестно, где хранятся "огнетушители
Антон Никонов
В 2023 году 36,9% всех DDoS-атак пришлось на сферу финансов
А 24,9% – на сегмент электронной коммерции
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Есть XML вида.
Как разобрать всё это в массивы
$id[]
$name[]
$price[]
и т.д.
???
Тут на любой вкус:
https://www.google.com/
Если не хочется, тогда можно просто preg_match_all по любому элементу
Гуглил. Те варианты, которые находил в пабликах, дают ошибку. Готовый скрипт, адаптированный под XML немного другого вида тоже, почему то, не срабатывает.
ну тогда регуляркой
preg_match_all('@<ID>(.*?)</ID>@',$xml,$ids);
print_r($ids);
Всем спасибо. Задача решена.
Хоть и задача решена. Но, не тут
проблема?
ну тогда регуляркой
Ну так себе решение
Маленький тест
результат на файле 41м (10000 товаров в 92 категориях)
на этом этапе preg_match_all аут.
Тяжелый случай - 100000 товаров в 92 категориях:
414 метров в память прочитать не удалось, а XMLReader за 3 секунды все обошел.
Легкий случай
Все справились, но до preg_match_all 8 метров памяти скрипт использовал, а после 40. По времени разница 15мс, SimpleXMLElement дал лучший результат, но, не существенно.
Всё вижу, что 8 версия PHP.
Я же не писал, про идеальный вариант и т.д. Я говорю, что можно применить в той или иной ситуации.
Но зато не будет проблем с:
preg_matchем парсить XML максимально тупо, есть же XPath который позволяет выгребать из документа нужные свойства с любым уровнем вложенности
Предельно тупо писать отсебятину, вот человек вверху всё достаточно протестировал.