Мне нужен удобный для чтения, но формат документа, пригодный для анализа

Я работаю над одним из тех проектов, где есть миллион лучших способов для достижения того, что мне нужно, но у меня нет выбора, и я должен сделать это таким образом. Вот:

Существует веб-форма, когда пользователь заполняет ее и нажимает на отправку. Пользовательский текстовый файл для чтения создается с использованием данных формы. Это выглядит так:

field_1: value for field one field_2: value for field two more data for field two (field two has a newline in it!) field3: some more data 

Моя проблема заключается в следующем: мне нужно проанализировать этот текстовый файл обратно в веб-форму, чтобы пользователь мог ее редактировать.

Как я мог бы сделать это с полным трудом? База данных не является вариантом, я должен использовать эти текстовые файлы.

Мои вопросы:

  • Есть ли надежный способ сделать это, используя формат в приведенном выше примере?
  • Какой человеческий читаемый формат будет работать лучше (другими словами, я могу изменить формат)
  • Человекочитаемый означает, что не программист мог его прочитать и знать, что к чему.

В этом проекте используется PHP.

ОБНОВИТЬ

Под понятным человеком я имею в виду, что любой может читать текст и не быть перегруженным им, включая вашу бабушку.

    Мне нужен удобный для чтения, но формат документа, пригодный для анализа

    Это то, что было разработано YAML . Вы можете узнать больше об этом на своем сайте или в Википедии .

    Процитировать Википедию:

    Синтаксис YAML был разработан так, чтобы его легко сопоставлять с типами данных, обычными для большинства языков высокого уровня: список, хеш и скаляр. Его знакомый с отступом контур и суровый внешний вид делают его особенно подходящим для задач, где люди могут просматривать или редактировать структуры данных, такие как файлы конфигурации, сброс во время отладки и заголовки документов

    Преимущество над XML заключается в том, что он не использует теги, которые могут запутать пользователей. И я думаю, что он чище, чем INI (о котором также упоминалось), потому что он просто использует двоеточия вместо равных знаков, точек с запятой и котировок.

    Образец YAML выглядит так:

     invoice: 34843 date : 2001-01-23 bill-to: &id001 given : Chris family : Dumars address: lines: | 458 Walkman Dr. Suite #292 city : Royal Oak state : MI postal : 48046 ship-to: *id001 product: - sku : BL394D quantity : 4 description : Basketball price : 450.00 - sku : BL4438H quantity : 1 description : Super Hoop price : 2392.00 tax : 251.42 total: 4443.52 comments: > Late afternoon is best. Backup contact is Nancy Billsmer @ 338-4338. 

    Я бы сказал,

    • INI-файлы или
    • YAML или
    • Пометка или
    • текстильный

    или почти любой легкий язык разметки, который вы считаете подходящим.

    Возможно, вы захотите заглянуть в YAML

    http://www.yaml.org/

    Я согласен с ответом Пабло Фернандеса. Я думаю, что JSON может быть хорошим выбором.

    XML – это вариант.

    Я просто хочу сказать, что строка INI довольно читаема:

     Pet_Name = "Fred" 

    Но вы всегда можете перевернуть свой собственный формат. Что-то вроде:

     Key: ValueValueValueValueValueValue Key: ValueValue 

    В принципе, вы должны взорвать строку с помощью строк новой строки, искать текстовые строки infront из двоеточий и использовать это как ключ, а также данные после двоеточия и перед значением новой строки.