О чем следует помнить, если вы придерживаетесь файлового подхода:
Использование собственного синтаксического анализатора
Синтаксический анализатор, написанный на C, скорее всего будет быстрее, чем один в PHP.На ум приходят два варианта:
Использовать файл settings.php
, который содержит правильно сформированный код PHP.Один из подходов, которые я использовал в прошлом, - это файл, который выглядит как
<?php return
array(
'key' => 'value'
);
Этот файл может быть include
-d один или несколько раз, а include
оператор вернет массив конфигурации.Когда вы пишете новые настройки, используйте var_export()
, чтобы получить действительный код php.
Другой подход заключается в использовании файла settings.csv
.Чтение с использованием fgetcsv()
, запись с использованием fputcsv()
.
Предотвращение «частичного» сохранения
Чтобы избежать частичного чтения файла во времяНастройки обновляются, сначала запишите новые настройки во временный файл, затем переместите этот файл в папку с файлами настроек (желательно, используя mv (1)
на * nix).