সাধারণত আমি পছন্দ করি .ini
বা এক্সএমএল কনফিগারেশন ফাইলগুলি বলি । বৃহত্তর সিস্টেমে প্রায়শই বিকাশকারী ছাড়া অন্য কারও জন্য একটি কনফিগারেশন মান, সম্ভবত একটি ডিবিএ বা সিসাদমিন পরিবর্তন করতে হবে। আমি জানি বেশিরভাগ ডিবিএ এবং সিসাদমিনে কোনও সাধারণ পিএইচপি স্ক্রিপ্টের মাধ্যমে নেভিগেট করতে কোনও সমস্যা হবে না, তবে তারা পছন্দ না করলে আমি পছন্দ করব। সেখানে একটি ছোট ভুল পুরো প্রয়োগটিকে বেশ কয়েকটি উপায়ে ক্ষতি করতে পারে।
তবে ছোট সিস্টেমে কনফিগারেশনের জন্য পিএইচপি স্ক্রিপ্টগুলি ব্যবহার করা অত্যন্ত সুবিধাজনক। আমি আজ AWS SDK এর সাথে খেলছিলাম , যা কনফিগারেশনের জন্য পিএইচপি স্ক্রিপ্টও ব্যবহার করে:
CFCredentials::set(array(
'development' => array(
'key' => 'xxx',
'secret' => 'xxxx',
'default_cache_config' => sys_get_temp_dir(),
'certificate_authority' => true
),
'@default' => 'development'
));
একটি হার্ডকডিংয়ের পরিবর্তে default_cache_config
, আমি সিস্টেমটি অস্থায়ী করে যাচ্ছি এবং এটি স্ক্রিপ্টটি মোতায়েন করা প্রতিটি সিস্টেমে কাজ করবে। এই স্ক্রিপ্টটি ধারণার একটি ছোট প্রমাণ যা প্রায় 10 বিকাশকারীকে পাস করা হবে এবং আমি চাই যে তারা এটিকে এটি চালিত করে, বহুলাংশে চিন্তাভাবনা করার পরেও। প্রোটোটাইপটি যদি বিকশিত হয়, তবে আমি এটি আমার এক্সএমএল কনফিগারেশন ক্লাসের সাথে হার্ডওয়ার করব (এবং সম্ভবত ফাইল সিস্টেম ক্যাশে নির্ভর করবে না)।
relate to one well-defined, portable syntax for configuration
আমি তা পাই না। আইএনআই ফাইলগুলির পাশাপাশি একটি ভাল সংজ্ঞাযুক্ত এবং পোর্টেবল সিনট্যাক্স রয়েছে। প্রতিটি.conf.php
ফাইলের নিজস্ব কাঠামো থাকে, বেশিরভাগ অ্যারে ভিত্তিক হয় তবে এটি কোনও আইএনআই ফাইলের চেয়ে আলাদা নয়।