2013-12-09 5 views
0

У меня есть приложение, которое имеет компоненты как в PHP, так и в C++. Им нужно поделиться некоторыми параметрами конфигурации, и я хотел бы использовать один файл для их совместного использования - простой файл конфигурации.Изменить символ комментария в настройках программы Boost?

К счастью, PHP имеет parse_ini_file(), а Boost имеет параметры программы, и они имеют практически идентичную семантику. Они оба могут прочитать все варианты, которые мне нужны.

В качестве «символа» функции PHP поддерживает точку с запятой («;»), а Boost поддерживает хэш («#»). PHP используется для поддержки хэша, но теперь он выдает устаревшую ошибку.

Я уверен, что я не могу легко изменить символ комментария в PHP. Кто-нибудь знает, могу ли я изменить символ комментария Boost? Мне бы очень хотелось не переписывать всю эту функциональность только для комментариев.

ответ

1

Выяснено решение этой проблемы.

Учитывая, что Boost достаточно надежный, я не мог найти разумного способа заменить символ комментария, а # - довольно признанный символ комментария в файлах конфигурации, я решил его на PHP.

Загрузите файл конфигурации с помощью file_get_contents, используйте preg_replace, чтобы удалить строки, начинающиеся с #, затем передайте результат через parse_ini_string.

Смежные вопросы