Есть 3 «пути», которые приходят мне на ум, когда вы спрашиваете об этом, но прежде чем подвести итог, позвольте мне сказать, что PHP не предназначен для того, чтобы делать то, что вы хотите. Не существует «универсальной» системы кеширования для запрашиваемых (или накопленных) данных. Однако вы можете сделать несколько вещей, чтобы ускорить загрузку страниц и запросы данных:
- Сеанс ( Требования: Поддержка файлов cookie для пользователя и запросы для каждого нового пользователя)
- Кэш-файл ( Требования: Доступ для записи на диск)
- Кэширование запроса ( Требования: Возможность кэширования запроса в MySQL)
Первые сеансы довольно очевидны, но вы должны использовать их только в том случае, если данные зависят от пользователя (если не пытаетесь избежать этого). Для кэширования файла вам понадобится доступ для записи, но это лучший способ для данных на всем сайте. Просто используйте либо сериализованные массивы (простой файл), либо данные XML, в зависимости от ваших потребностей. Последний - отличный способ ускорить запросы MySQL (если они всегда одинаковы и у вас нет прав на запись в систему). Вы можете кэшировать запрос в базе данных, используя cached select .
Как видите, все эти методы имеют свои преимущества и недостатки, но вы можете использовать их по своему усмотрению. Однако стоит отметить, что загрузка кэшированных данных из файла или сеанса требует времени, поэтому вам следует проверить, действительно ли кэширование ускоряет запросы!