Создайте папку кэша для хранения всех RSS-каналов.
Когда страница загружена, проверьте, существует ли файл, не загружается ли он, и обработайте его.
Если файл существует и результат filemtime($cached_file) + (60 * 60 * 4)
больше time()
, это означает, что с момента получения RSS-канала прошло менее 4 часов.Показать страницу как обычно.Если это не так, заново загрузите файл и отобразите его.
Существует множество учебных пособий по синтаксическому анализу RSS-каналов в PHP.Я предпочитаю использовать расширение PHP DOM
, но есть много разных способов сделать это.