Download the PHP package stoyishi/cache without Composer
On this page you can find all versions of the php package stoyishi/cache. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download stoyishi/cache
More information about stoyishi/cache
Files in stoyishi/cache
Package cache
Short Description PSR-16 compliant file-based cache system for PHP 7.4+
License MIT
Informations about the package cache
FileCache - Fayl Asosli Kesh Tizimi
PSR-16 SimpleCache standartiga mos keladigan PHP uchun fayl asosli kesh kutubxonasi.
Umumiy Ma'lumot
FileCache - bu PSR-16 SimpleCache interfeysini to'liq amalga oshiradigan yengil va samarali fayl asosli kesh tizimi. U PHP ilovalaringizda ma'lumotlarni fayl tizimida saqlash orqali keshlashning oddiy va qulay usulini taqdim etadi.
Xususiyatlar
- ✅ PSR-16 Standartiga Mos -
Psr\SimpleCache\CacheInterfaceto'liq amalga oshirilgan - 🗂️ Ierarxik Saqlash - Fayllarni samarali tashkil qilish uchun MD5 asosli katalog tuzilmasi
- 🔒 Fayl Blokirovkasi - Xavfsiz operatsiyalar uchun to'g'ri fayl blokirovkasi mexanizmi
- ⏰ TTL Qo'llab-Quvvatlash - Vaqt bilan avtomatik o'chib ketadigan kesh elementlari
- 🚀 Ommaviy Operatsiyalar - Ko'p get/set/delete operatsiyalarini qo'llab-quvvatlash
- 💾 Seriyalashtirish - Kesh qiymatlarini avtomatik seriyalashtirish/deseriyalashtirish
Talablar
- PHP 7.0 yoki undan yuqori versiya
- PSR-16 SimpleCache interfeysi
O'rnatish
Keyin autoload.php klassini loyihangizga qo'shing:
Foydalanish
Asosiy Foydalanish
Yashash Muddati (TTL)
Ommaviy Operatsiyalar
Standart Qiymatlar
API Ma'lumotnomasi
Konstruktor
Belgilangan kesh katalogi bilan yangi FileCache nusxasini yaratadi.
Parametrlar:
$path- Kesh fayllari saqlanadigan katalog yo'li
get()
Keshdan qiymatni oladi.
Parametrlar:
$key- Elementning noyob kaliti$default- Kalit topilmasa qaytariladigan standart qiymat
Qaytaradi: Keshlangan qiymat yoki standart qiymat
set()
Ma'lumotni keshda saqlaydi.
Parametrlar:
$key- Elementning noyob kaliti$value- Keshlanadigan qiymat (seriyalashtiriladi)$ttl- Yashash muddati soniyalarda (null bo'lsa standart 86400)
Qaytaradi: Muvaffaqiyatli bo'lsa true
delete()
Elementni keshdan o'chiradi.
Parametrlar:
$key- Elementning noyob kaliti
Qaytaradi: Muvaffaqiyatli bo'lsa true
clear()
Barcha kesh kalitlarini to'liq tozalaydi.
Qaytaradi: Muvaffaqiyatli bo'lsa true
has()
Elementning keshda mavjudligini aniqlaydi.
Parametrlar:
$key- Elementning noyob kaliti
Qaytaradi: Element mavjud bo'lsa true, aks holda false
getMultiple()
Noyob kalitlar bo'yicha bir nechta kesh elementlarini oladi.
Parametrlar:
$keys- Kalitlar massivi$default- Topilmagan kalitlar uchun standart qiymat
Qaytaradi: Kalit-qiymat juftliklari massivi
setMultiple()
Keshda kalit-qiymat juftliklari to'plamini saqlaydi.
Parametrlar:
$values- Kalit-qiymat juftliklari massivi$ttl- Yashash muddati soniyalarda
Qaytaradi: Muvaffaqiyatli bo'lsa true
deleteMultiple()
Bir nechta kesh elementlarini o'chiradi.
Parametrlar:
$keys- O'chiriladigan kalitlar massivi
Qaytaradi: Muvaffaqiyatli bo'lsa true
Katalog Tuzilmasi
FileCache MD5 xeshlashga asoslangan ierarxik katalog tuzilmasidan foydalanadi:
Har bir kesh kaliti MD5 bilan xeshlanadi va birinchi 4 ta belgi pastki katalog tuzilmasini (2 daraja chuqurlik) belgilaydi.
Xavfsizlik
FileCache operatsiyalarning xavfsizligini ta'minlash uchun PHP ning flock() funksiyasidan foydalanadi:
- Umumiy blokirovka (LOCK_SH) - o'qish operatsiyalari uchun
- Eksklyuziv blokirovka (LOCK_EX) - yozish operatsiyalari uchun
Ishlash Samaradorligi
- Katalog Tuzilmasi: Ikki darajali katalog ierarxiyasi bitta katalogda juda ko'p fayllar bo'lishining oldini oladi
- Fayl Blokirovkasi: Ma'lumotlar yaxlitligini ta'minlaydi, lekin yuqori yuklamada ishlashga ta'sir qilishi mumkin
- Seriyalashtirish: Maksimal muvofiqlik uchun PHP ning
serialize()funksiyasidan foydalanadi - Avtomatik Tozalash: Muddati o'tgan elementlar ularga murojaat qilinganda o'chiriladi
Eng Yaxshi Amaliyotlar
Xatolarni Qayta Ishlash
Kesh tizimi umumiy holatlarni avtomatik boshqaradi:
- Kesh katalogi mavjud bo'lmasa, uni yaratadi
- Topilmagan/muddati o'tgan elementlar uchun standart qiymatlarni qaytaradi
- Fayl blokirovkasi xatolarini xavfsiz boshqaradi
Misol
Litsenziya
Ushbu implementatsiya Stoyishi namespace qismini tashkil qiladi. Foydalanish shartlari uchun loyihangizning litsenziyasiga murojaat qiling.
Hissa Qo'shish
Hissa qo'shish xush kelibsiz! Quyidagilarga e'tibor bering:
- PSR-16 muvofiqligini saqlang
- Kod PSR-12 kodlash standartlariga amal qilishi kerak
- Barcha operatsiyalar xavfsiz bo'lishi kerak
- Yangi xususiyatlar uchun testlar qo'shing
Qo'llab-Quvvatlash
Muammolar, savollar yoki hissa qo'shish uchun loyiha ta'minlovchilariga murojaat qiling yoki loyiha omborida muammoni yuborib qo'ying.
Eslatma: Ushbu kesh tizimi kichik va o'rta darajadagi loyihalar uchun juda mos keladi. Katta yuklama va yuqori trafik uchun Redis yoki Memcached kabi maxsus kesh tizimlaridan foydalanish tavsiya etiladi.