Разделил код по ответственностям и разнес по файлам:
В данном коде можно выделить следующие ответственности:
- Получение HTML страницы с помощью curl.
- Создание объекта Crawler и загрузка HTML кода.
- Извлечение нужных данных из таблицы.
- Формирование массива данных.
- Вывод полученных данных.
по разным файлам следующим образом:
- Файл curlHelper.php
- Файл crawlerHelper.php
- Файл public/index.php
Зависимости:
{
"require-dev": {
"symfony/var-dumper": "^6.3",
"phpunit/phpunit": "^10.3"
}
}
, для использования функции "dd();" и покрытие тестами кода.
{
"require": {
"ext-curl": "*",
"ext-json": "*",
"symfony/dom-crawler": "^6.3",
"symfony/css-selector": "^6.3"
}
}
- оконные формы;
- созранение в базе данных.
- php версии 8.1;
- composer для управления автозагрузкой файлов и установки пакетов.
- склонировать репозиторий;
- выполнить make start;
- install
- validate
- up
- build
- stop
- start
- test