PHP показывает все запросы при загрузке страницы

Я строю скрипт, который определяет время загрузки страницы. Я могу получить общее время загрузки страницы с

     $start = microtime(true);
 $homepage = file_get_contents('http://www.apple.com/');
 echo "It takes ";
echo microtime(true) - $start . " seconds to load your site" . '<br>';

Но я хочу получить время загрузки каждого запроса к веб-URL. Как это

введите описание изображения здесь

Это результат gmetrix.com на google.com. Я хочу создать то же самое. Я попытался с простым html dom получить весь контент со страницы, как изображения и другие вещи, я также получил размер файла с помощью функции php filesize, но я не смог найти способ измерить время загрузки каждого файла. Есть ли способ получить все запросы при загрузке страницы через php. Я не знаю, возможно ли это с помощью сценария DOM или нет, если есть другой способ, пожалуйста, сообщите. Пожалуйста, ведите меня

1 ответ

Я сделал нечто подобное для проверки sitemap.xml: https://github.com/paul-m/sitemap_verify

Он использует платформу Goutte для выполнения тяжелой работы DOM: https://github.com/FriendsOfPHP/Goutte

Оно использует Goutte\Client a) загрузить и проанализировать XML, а затем b) сделать запрос HEAD для каждого из ресурсов и убедиться, что он существует.

Вы можете принять аналогичную стратегию:

  • использование Goutte\Client чтобы получить содержимое страницы.
  • Царапайте это для ресурсов.
  • использование Goutte\Client рассчитать время загрузки каждого ресурса или просто выполнить запрос HEAD и посмотреть на Content-Length, чтобы сделать оценку.
Другие вопросы по тегам