php

Кешування даних у файл за допомогою PHP

Last updated: 06.04.2026
Views: 100

Іноді виникає необхідність обмежити кількість запитів до зовнішнього джерела даних, особливо коли дані змінюються нечасто. Наприклад, це може бути корисним під час роботи з API, які надають обмінні курси, дані про погоду або іншу інформацію, яка оновлюється лише періодично. Здійснення запиту при кожному завантаженні сторінки в таких випадках є неефективним і може уповільнити роботу вашого сайту.

Простим та ефективним рішенням є кешування даних у локальному файлі. Замість того, щоб щоразу запитувати нові дані, скрипт спочатку перевіряє, чи вже існує кешована версія та чи вона ще актуальна. Такий підхід може значно зменшити кількість зовнішніх запитів та покращити швидкість завантаження сторінки.

Основна ідея кешування на основі файлів полягає в порівнянні часу останньої модифікації файлу кешу з поточним часом. Якщо файл ще «свіжий» (наприклад, оновлений протягом останньої години), скрипт використовує його вміст. В іншому випадку він отримує нові дані із зовнішнього джерела, оновлює файл кешу, а потім повертає свіжий результат.

PHP

// Cache lifetime in seconds
$expires = 3600; 
$cache_file = 'data.json';
// Some api url
$url = 'https://jsonplaceholder.typicode.com/posts/1/comments';

if (file_exists($cache_file) && (filemtime($cache_file) > (time() - $expires))) {
	// Getting data from the cache
   	$file = file_get_contents($cache_file);
} else {
	// Write cache
	$file = file_get_contents($url);
	file_put_contents($cache_file, $file, LOCK_EX);
}

Цей метод легко реалізувати на PHP і добре працює для багатьох малих та середніх проектів, де не потрібна повноцінна система кешування.

author
Автор: Ігор Рибалко
Працюю фронтенд розробником з 2014 року. Основний стек технологій - Vue.js і WordPress

Схожі записи:

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *