Symfony 4.1

PdoCache




symfony

PdoCache

वर्ग PdoCache AbstractCache उपकरणों का विस्तार करता है PruneableInterface

लक्षण

PdoTrait
AbstractTrait
LoggerAwareTrait

गुण

संरक्षित $ maxIdLength

तरीके

सरणी | Traversable doFetch (सरणी $ ids)

कई कैश आइटम लाए।

AbstractTrait
bool doHave (स्ट्रिंग $ id)

यदि कैश में निर्दिष्ट कैश आइटम है, तो पुष्टि करता है।

AbstractTrait
bool doClear (स्ट्रिंग $ नाम स्थान)

पूल में सभी आइटम हटाता है।

AbstractTrait
bool doDelete (सरणी $ आईडी)

पूल से कई आइटम निकालता है।

AbstractTrait
सरणी | bool doSave (सरणी $ मान, int $ जीवनकाल)

कई कैश आइटम को तुरंत जारी रखता है।

AbstractTrait
hasItem ($ कुंजी)

{} @Inheritdoc

AbstractTrait
clear ()

{} @Inheritdoc

AbstractTrait
deleteItem ($ कुंजी)

{} @Inheritdoc

AbstractTrait
deleteItems (सरणी $ कुंजियाँ)

{} @Inheritdoc

AbstractTrait
bool सक्षम enableVersioning (बूल $ सक्षम = सत्य)

आइटमों के संस्करण को सक्षम / अक्षम करता है।

AbstractTrait
reset ()

{} @Inheritdoc

AbstractTrait
स्थिर मिश्रित unserialize (स्ट्रिंग $ मूल्य)

देशी अनारक्षित () फ़ंक्शन की तरह लेकिन कुछ भी गलत होने पर एक अपवाद को फेंक देता है।

AbstractTrait
स्थिर handleUnserializeCallback AbstractTrait
__construct ($ connOrDsn, string $ namespace = '', int $ defaultLifetime = 0, array $ options = array ())

आप या तो मौजूदा डेटाबेस कनेक्शन को पीडीओ उदाहरण या डॉक्ट्रिन डीबीएएल कनेक्शन या एक डीएसएन स्ट्रिंग के रूप में पास कर सकते हैं जिसका उपयोग डेटाबेस से आलसी-कनेक्ट करने के लिए किया जाएगा जब कैश वास्तव में उपयोग किया जाता है।

get ($ कुंजी, $ डिफ़ॉल्ट = अशक्त)

{} @Inheritdoc

AbstractCache
set ($ कुंजी, $ मूल्य, $ ttl = null)

{} @Inheritdoc

AbstractCache
getMultiple ($ चाबियाँ, $ डिफ़ॉल्ट = अशक्त)

{} @Inheritdoc

AbstractCache
setMultiple ($ मान, $ ttl = null)

{} @Inheritdoc

AbstractCache
deleteMultiple ($ कुंजी)

{} @Inheritdoc

AbstractCache
createTable ()

कैश आइटम संग्रहीत करने के लिए तालिका बनाता है जिसे एक बार सेटअप के लिए कहा जा सकता है।

PdoTrait
prune ()

{} @Inheritdoc

PdoTrait

विवरण

सार संरक्षित सरणी | Traversable डफ (सरणी $ आईडी)

कई कैश आइटम लाए।

पैरामीटर

सरणी $ आईडी कैश लाने के लिए पहचान करता है

प्रतिलाभ की मात्रा

सरणी | Traversable कैश में पाए जाने वाले संबंधित मान

सार संरक्षित बूल doHave (स्ट्रिंग $ आईडी)

यदि कैश में निर्दिष्ट कैश आइटम है, तो पुष्टि करता है।

पैरामीटर

तार $ आईडी वह पहचानकर्ता जिसके लिए अस्तित्व की जांच करना

प्रतिलाभ की मात्रा

bool सच है अगर आइटम कैश में मौजूद है, तो गलत है

सार संरक्षित बूल doClear (स्ट्रिंग $ नाम स्थान)

पूल में सभी आइटम हटाता है।

पैरामीटर

तार $ नाम स्थान इस पूल द्वारा प्रबंधित सभी पहचानकर्ताओं के लिए प्रयुक्त उपसर्ग

प्रतिलाभ की मात्रा

bool सच है अगर पूल को सफलतापूर्वक साफ किया गया, अन्यथा झूठ

सार संरक्षित बूल doDelete (सरणी $ आईडी)

पूल से कई आइटम निकालता है।

पैरामीटर

सरणी $ आईडी पहचानकर्ताओं की एक सरणी जिसे पूल से हटा दिया जाना चाहिए

प्रतिलाभ की मात्रा

bool सच है अगर आइटम सफलतापूर्वक हटाए गए थे, अन्यथा झूठे

सार संरक्षित सरणी | बूल डोसे (सरणी $ मान, इंट $ जीवनकाल)

कई कैश आइटम को तुरंत जारी रखता है।

पैरामीटर

सरणी $ मूल्यों कैश के मूल्य, उनके कैश पहचानकर्ता द्वारा अनुक्रमित
पूर्णांक $ जीवनकाल कैश्ड मूल्यों के जीवनकाल, मैनुअल सफाई तक जारी रखने के लिए 0

प्रतिलाभ की मात्रा

सरणी | bool पहचानकर्ता जो कैश्ड होने में असफल रहे या कैशिंग सफल रहे या नहीं यह बताते हुए बूलियन

hasItem ($ कुंजी)

{} @Inheritdoc

पैरामीटर

$ कुंजी

स्पष्ट()

{} @Inheritdoc

deleteItem ($ कुंजी)

{} @Inheritdoc

पैरामीटर

$ कुंजी

DeleteItems (सरणी $ कुंजियाँ)

{} @Inheritdoc

पैरामीटर

सरणी $ कुंजी

बूल सक्षम करना (बूल $ सक्षम = सत्य)

आइटमों के संस्करण को सक्षम / अक्षम करता है।

जब संस्करण को सक्षम किया जाता है, तो कैश साफ़ करना परमाणु होता है और आगे बढ़ने के लिए मौजूदा कुंजियों को सूचीबद्ध करने की आवश्यकता नहीं होती है, लेकिन पुरानी कुंजी को कचरा संग्रह की आवश्यकता हो सकती है और बैक-एंड के लिए अतिरिक्त राउंड-ट्रिप की आवश्यकता होती है।

इस विधि को कॉल करने से ज्ञापन नामस्थान संस्करण भी साफ़ हो जाता है और इस तरह इसका पुन: एकीकरण हो जाता है।

पैरामीटर

bool $ सक्षम

प्रतिलाभ की मात्रा

bool संस्करण की पिछली स्थिति

रीसेट()

{} @Inheritdoc

स्थिर संरक्षित मिश्रित अनरजिस्टाइल (स्ट्रिंग $ मूल्य)

देशी अनारक्षित () फ़ंक्शन की तरह लेकिन कुछ भी गलत होने पर एक अपवाद को फेंक देता है।

पैरामीटर

तार $ मूल्य

प्रतिलाभ की मात्रा

मिश्रित

अपवाद

Exception

स्थिर संभालउपयोगीकृत करेबैक ($ वर्ग)

पैरामीटर

$ वर्ग

__construct ($ connOrDsn, string $ namespace = '', int $ defaultLifetime = 0, array $ options = array ())

आप या तो मौजूदा डेटाबेस कनेक्शन को पीडीओ उदाहरण या डॉक्ट्रिन डीबीएएल कनेक्शन या एक डीएसएन स्ट्रिंग के रूप में पास कर सकते हैं जिसका उपयोग डेटाबेस से आलसी-कनेक्ट करने के लिए किया जाएगा जब कैश वास्तव में उपयोग किया जाता है।

उपलब्ध विकल्पों की सूची: * db_table: तालिका का नाम [डिफ़ॉल्ट: cache_items] * db_id_col: वह कॉलम जहां कैश आईडी संग्रहीत करना है [डिफ़ॉल्ट: item_id] * db_data_col: वह कॉलम जहां कैश डेटा संग्रहीत करने के लिए [डिफ़ॉल्ट: item_data] * db_lifetime_col: वह कॉलम जहां जीवनकाल [डिफ़ॉल्ट: item_lifetime] * db_time_col: कॉलम जहां स्टोर करने के लिए टाइमस्टैम्प [डिफ़ॉल्ट: item_time] * db_username: उपयोगकर्ता नाम जब आलसी-कनेक्ट [डिफ़ॉल्ट: ''] * db_password: पासवर्ड जब आलसी-कनेक्ट [डिफ़ॉल्ट: ''] * db_connection_options: ड्राइवर-विशिष्ट कनेक्शन विकल्पों की एक सरणी [डिफ़ॉल्ट: सरणी ()]

पैरामीटर

$ connOrDsn
तार $ नाम स्थान
पूर्णांक $ defaultLifetime
सरणी $ विकल्प

अपवाद

InvalidArgumentException जब पहला तर्क पीडीओ नहीं है और न ही कनेक्शन और न ही स्ट्रिंग
InvalidArgumentException जब पीडीओ त्रुटि मोड पीडीओ नहीं है :: ERRMODE_EXCEPTION
InvalidArgumentException जब नाम स्थान में अमान्य वर्ण हैं

मिल ($ कुंजी, $ डिफ़ॉल्ट = अशक्त)

{} @Inheritdoc

पैरामीटर

$ कुंजी
$ डिफ़ॉल्ट

सेट ($ कुंजी, $ मूल्य, $ ttl = null)

{} @Inheritdoc

पैरामीटर

$ कुंजी
$ मूल्य
$ टीटीएल

getMultiple ($ चाबियाँ, $ डिफ़ॉल्ट = अशक्त)

{} @Inheritdoc

पैरामीटर

$ कुंजी
$ डिफ़ॉल्ट

सेटमल्ट ($ मान, $ ttl = null)

{} @Inheritdoc

पैरामीटर

$ मूल्यों
$ टीटीएल

deleteMultiple ($ कुंजी)

{} @Inheritdoc

पैरामीटर

$ कुंजी

तालिका बनाएं()

कैश आइटम संग्रहीत करने के लिए तालिका बनाता है जिसे एक बार सेटअप के लिए कहा जा सकता है।

कैश आईडी को अधिकतम लंबाई 255 के कॉलम में सहेजा जाता है। कैश डेटा को BLOB में सहेजा जाता है।

अपवाद

PDOException जब टेबल पहले से मौजूद है
DBALException जब टेबल पहले से मौजूद है
DomainException जब एक असमर्थित पीडीओ चालक का उपयोग किया जाता है

छटना()

{} @Inheritdoc