परिवेश के आधार पर कॉन्फ़िगरेशन प्रदान करना एक बहुत ही सामान्य कार्य है, और इसे संभालने के कुछ अन्य तरीके भी हैं।
पर्यावरण चर
यदि पर्यावरण इसकी अनुमति देता है, तो आप पर्यावरण चर का उपयोग कर सकते हैं। आप DATABASE_URL
. के माध्यम से आसानी से DB कॉन्फ़िगरेशन प्रदान कर सकते हैं DSN कनेक्शन स्ट्रिंग के रूप में चर जैसे
mysql://user:[email protected]/production?encoding=utf8&timezone=UTC&cacheMetadata=true
कुकबुक> कॉन्फ़िगरेशन> पर्यावरण चर
अतिरिक्त कॉन्फ़िग फ़ाइलें
एक अन्य विकल्प वर्तमान परिवेश के आधार पर अलग/अतिरिक्त कॉन्फिग फाइलों को लोड करना है, ताकि आप केवल उन्हीं फाइलों को तैनात कर सकें जो वास्तव में एक विशिष्ट वातावरण के लिए आवश्यक हैं।
Configure::load('app', 'default', false);
// $enviroment needs to be validated /sanitzied in order to
// avoid loading arbitrary files from the config directory
Configure::load($enviroment, 'default', true);
कुकबुक> कॉन्फ़िगरेशन> अतिरिक्त लोड हो रहा है कॉन्फ़िगरेशन फ़ाइलें
कनेक्शन अलियासिंग
और कनेक्शन एलियासिंग भी है, केकपीएचपी स्वचालित रूप से परीक्षण वातावरण में करता है। मान लें कि आपके पास default
है और एक production
कॉन्फ़िगरेशन, फिर आप production
. को उपनाम दे सकते हैं कनेक्शन default
. के रूप में आपके उत्पादन परिवेश में, ताकि हर जगह आपका कोड default
. का उपयोग करने का प्रयास करे कनेक्शन, यह वास्तव में production
. का उपयोग करेगा एक।
\Cake\DataSource\ConnectionManager::alias('production', 'default');
API> \Kake\DataSource\ConnectionManager::उपनाम ()