Secara umum saya lebih suka .ini
atau file konfigurasi XML. Dalam sistem yang lebih besar, seringkali orang selain pengembang perlu mengubah nilai konfigurasi, mungkin DBA atau sysadmin. Kebanyakan DBA dan sysadmin yang saya tahu tidak akan memiliki masalah menavigasi melalui skrip PHP sederhana, tetapi saya lebih suka jika mereka tidak melakukannya. Satu kesalahan kecil di sana dapat merusak seluruh aplikasi dalam beberapa cara.
Tetapi dalam sistem yang lebih kecil, sangat nyaman untuk menggunakan skrip PHP untuk konfigurasi. Saya bermain-main dengan AWS SDK hari ini, yang juga menggunakan skrip PHP untuk konfigurasi:
CFCredentials::set(array(
'development' => array(
'key' => 'xxx',
'secret' => 'xxxx',
'default_cache_config' => sys_get_temp_dir(),
'certificate_authority' => true
),
'@default' => 'development'
));
Alih-alih hardcoding default_cache_config
, saya melewati temp sistem, dan itu akan bekerja di setiap sistem yang saya gunakan skrip. Script ini adalah bukti kecil konsep yang akan diteruskan sekitar 10 pengembang, dan saya ingin mereka menjalankannya, tanpa banyak memikirkan. Jika prototipe berkembang, saya akan hardwire dengan kelas konfigurasi XML saya (dan jelas tidak akan bergantung pada cache sistem file).
relate to one well-defined, portable syntax for configuration
Saya tidak mengerti. file ini memiliki sintaks yang jelas dan portabel juga. Setiap.conf.php
file memiliki strukturnya sendiri, sebagian besar berbasis array, tetapi itu tidak jauh berbeda dari file ini.