Nói chung, tôi thích .ini
hoặc các tệp cấu hình XML. Trong các hệ thống lớn hơn, thường thì ai đó không phải là nhà phát triển sẽ cần thay đổi giá trị cấu hình, có thể là DBA hoặc sysadmin. Hầu hết các DBA và sysadins mà tôi biết sẽ không gặp vấn đề gì khi điều hướng qua một tập lệnh PHP đơn giản, nhưng tôi thích nếu chúng không như vậy. Một sai lầm nhỏ trong đó có thể gây hại cho toàn bộ ứng dụng theo nhiều cách.
Nhưng trong các hệ thống nhỏ hơn, việc sử dụng các tập lệnh PHP để cấu hình là cực kỳ thuận tiện. Tôi đã chơi xung quanh với AWS SDK ngày hôm nay, nó cũng sử dụng tập lệnh PHP để cấu hình:
CFCredentials::set(array(
'development' => array(
'key' => 'xxx',
'secret' => 'xxxx',
'default_cache_config' => sys_get_temp_dir(),
'certificate_authority' => true
),
'@default' => 'development'
));
Thay vì mã hóa a default_cache_config
, tôi chuyển qua temp hệ thống và điều đó sẽ hoạt động trong mọi hệ thống tôi triển khai tập lệnh. Kịch bản này là một bằng chứng nhỏ về khái niệm sẽ được thông qua cho khoảng 10 nhà phát triển và tôi muốn họ chạy nó như hiện tại, với nhiều điều phải suy nghĩ. Nếu nguyên mẫu phát triển, tôi sẽ kết nối nó với lớp cấu hình XML của mình (và rõ ràng sẽ không phụ thuộc vào bộ đệm của hệ thống tệp).
relate to one well-defined, portable syntax for configuration
Tôi không hiểu điều đó. tập tin ini cũng có một cú pháp được xác định rõ ràng và di động. Mỗi.conf.php
tệp có cấu trúc riêng, hầu hết đều dựa trên mảng, nhưng điều đó không quá khác so với tệp ini.