हम हमेशा जल्दी में रहते हैं और जितनी जल्दी हो सके विकास करना चाहते हैं, और हम अक्सर पुरानी आदतों को अपनाते हैं और पुराने सॉफ़्टवेयर का निर्माण करते हैं, एक चीज जिसे हम बहुत सुधार कर सकते हैं वह छोटी सी चीज है जिसे पर्यावरण, आइये इसके बारे में थोड़ा और समझते हैं।
सबसे पहले, मैं यहां लारवेल के लिए कॉन्फ़िगरेशन की अवधारणा पर ध्यान केंद्रित करना चाहूंगा, मैं शेष पैटर्न, जैसे संसाधन या उस जैसे अन्य के बारे में चिंता नहीं करूंगा।
1 - आइए ज्ञान की तलाश करें!
कुछ समय पहले मैंने सुना था कि मैं अपने पागल कोड के भीतर यह ईएनवी पास नहीं कर सका, मैं ऐसा था; बहुत खूब
तो उद्देश्य कारणों को समझना है, क्योंकि इस तरह, हम इंजीनियर के रूप में बेहतर निर्णय ले सकते हैं।
1.1 - सही तरीका या दृष्टिकोण?
तो आइए भविष्य के छोटे गुरु, आइए एक पर्यावरण चर में एक मान डालें ताकि हम खेल सकें, तो आइए इसे कॉल करें:
आइए पहले बिंदु पर जाएं, इस कॉन्फ़िगरेशन को एक पर्यावरण चर के रूप में रखने का बढ़िया निर्णय, इस तरह आप विभिन्न परिवेशों को प्रबंधित करना आसान बनाते हैं (उत्पादन, अनुमोदन, यदि आपके पास एक है?) और अधिक सुरक्षित, क्योंकि यह मूल्य है जब आप अपने रिपॉजिटरी (git/bitbucket) में वह शरारती git पुश करते हैं तो इसका खुलासा नहीं किया जाएगा, क्या आप कल्पना कर सकते हैं कि आपके पानी का रहस्य इंटरनेट पर लीक हो गया है, कितना दुखद है
।और लारवेल में इस मान को पुनः प्राप्त करने के लिए हम env() विधि का उपयोग कर सकते हैं या इल्यूमिनेट से समर्थन जैसे किसी अन्य पैकेज का भी उपयोग कर सकते हैं (यह मुझे मिनियन की याद दिलाता है, मुझे नहीं पता क्यों?)
env: लारवेल हेल्पर (जो Env::get का उपयोग करता है)
Env::get: सपोर्ट इल्यूमिनेट पैकेज से Env क्लास
वाह, यह तैयार है, तो फैशन का आविष्कार क्यों करते रहें? सच तो यह है कि यह कोई अच्छा विचार नहीं है, मैं जल्द ही इसका कारण बताऊंगा, मेरे साथ बने रहें।
अलग-अलग समाधान के लिए, हम कॉन्फ़िगरेशन फ़ाइलों का उल्लेख कर सकते हैं जो बनाए गए पर्यावरण के मूल्य को पुनः प्राप्त करेंगे, इसलिए कॉन्फ़िगरेशन फ़ाइल केंद्रीकृत है और गंभीरता से आती है! कोड पढ़ने के लिए काफी बेहतर है।
इस विशिष्ट स्थिति में आप पहले से ही मौजूदा कॉन्फ़िगरेशन फ़ाइल का उपयोग कर सकते हैं, जिसे services.php कहा जाता है, लेकिन कुछ भी आपको अपने विशिष्ट संदर्भ के लिए फ़ाइल बनाने से नहीं रोकता है।
पथ में config/services.php
और इसलिए हम इसे कोड में इस प्रकार कॉल करेंगे:
2 - अच्छा है, लेकिन मुझे वेरिएबल्स को पुनः प्राप्त करने के लिए कॉन्फिग का उपयोग क्यों करना चाहिए और न केवल उन्हें सीधे लाना चाहिए?
मैं कुछ कारण बताने का प्रयास करूंगा:
2.1 - बेहतर प्रदर्शन और IO का बेहतर उपयोग
निम्नलिखित स्थिति के बारे में सोचें, क्या आपके पास उत्पादन में फ़ाइलें हैं जिन्हें हर समय एक्सेस किया जाएगा, जिससे काफी आईओ होगा, जिससे मशीन संसाधनों में वृद्धि होगी और स्थिति के आधार पर सिस्टम धीमा हो जाएगा? (और मेरा विश्वास करें, जब तक आप वास्तव में समस्या का पता नहीं लगा लेते, आप उन चीज़ों से गुज़रेंगे जो आपके सारे ज्ञान पर सवाल उठा देंगी)
जब हम उत्पादन परिवेश के बारे में बात करते हैं, तो यह अनुशंसा की जाती है कि आप अपनी सुंदर कॉन्फ़िगरेशन फ़ाइलों को कैश करें, लारवेल के साथ आप कारीगर का उपयोग कर सकते हैं
php artisan config:cache
यह खूबसूरत कमांड सभी कॉन्फ़िगरेशन फ़ाइलों और उनके संबंधित मानों को लेता है और उन्हें एक एकल PHP फ़ाइल में संकलित करता है, जिससे प्रदर्शन बढ़ता है। यह इस तथ्य के कारण है कि IO संख्याएँ घटकर 1 हो गई हैं
जिज्ञासा: जब आप इस कमांड का उपयोग करते हैं, तो env() वापस लौटना शुरू कर देता है NULL क्योंकि यह इस फ़ंक्शन को अक्षम कर देता है। तो अगर "Neida" से एक env() आपका काम बंद हो गया, तो बस।
Env() IO ऑपरेशन निष्पादित करें और वे महंगे और धीमे हैं।
हर बार एनवी की आवश्यकता होने पर ऑपरेशन करने के बजाय एप्लिकेशन की शुरुआत में इस ऑपरेशन को एक बार करना सबसे अच्छा है।
2.2 - सर्वोत्तम संभव तरीके से संगठन और मानकीकरण
आप अपनी सभी सेटिंग्स आसानी से अपनी इच्छानुसार रख सकते हैं। आप अपने इच्छित कुत्ते का नाम रख सकते हैं, एक फ़ोल्डर बना सकते हैं और सभी सारणियों को अपनी इच्छानुसार संरचना कर सकते हैं, इससे संरचना साफ-सुथरी हो जाएगी (कृपया संयम से उपयोग करें)
उदाहरण के लिए:
इस कुंजी को देखें:
और अब इस कुंजी को देखें:
मेरी विनम्र राय में पहला बहुत बेहतर है।
और इसके अलावा, आप अपने समान कॉन्फ़िगरेशन को अपने कोड में "बेतरतीब ढंग से" रखे बिना सही और केंद्रीकृत स्थान पर रख सकते हैं, और मुझे वास्तव में सरणी को संरचित करने का यह विचार पसंद है जो एप्लिकेशन के लिए पूरी तरह से समझ में आता है।
और नए डेवलपर्स के लिए मार्गदर्शन बहुत सरल है, क्योंकि आप उन्हें बता सकते हैं कि नया कॉन्फ़िगरेशन कहां और कैसे बनाना है।
इसे सरल रखें, अंतर पैदा करें!
अब तक की हर चीज़ के लिए धन्यवाद।
स्रोत:
लारवेल 11 दस्तावेज़ीकरण कॉन्फ़िगरेशन
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3