Создание файла CSS из файла или базы данных (PHP)

0

Я хочу создать файл CSS на основе выбора пользователей.

Я рассматриваю, каким образом было бы лучше. Например, использовать массивы и сохранять их в XML файле или использовать хранилище ключей/значений, например Mongo DB.

Таким образом, массив можно вытащить из базы данных XML или ключа/значения, изменить и сохранить. После этого на основе этих данных будет создан CSS файл. Это значит, что файл CSS всегда будет создан правильно.

MySQL кажется неуклюжим при хранении массивов, если я не использую EAV. поэтому я упоминаю базу данных key/value, такую ​​как mongo DB.

Причиной всего этого является то, что я просто хочу создать приятный пользовательский интерфейс, где пользователь witout знания CSS могут генерировать свою собственную тему.

Я просто хочу представить пользователю форму, в которой они могут заполнить цвет, ширину и т.д.

Как вы думаете, что было бы хорошо?

Пример массива:

$css = array(
 'body' => array(
  'font-family' => 'arial',
  'font-size'  => '12px',
 ),
 'wrapper' => array(
  'margin'=> '20px auto 20px auto',
  'width' => '900px',
 ),
 'content' => array(
  'background-color' => '#c3c3c3',
  'width'    => '900px',
 ),
);

  • 0
    «Кажется, MySQL неуклюже хранит такие данные». какие данные? Можете ли вы объяснить немного больше вашей ситуации / желаемого решения?
  • 0
    Я предполагаю, что это php (я не php парень). Разве PHP не динамический? Не могли бы вы просто сохранить это и eval () получить массив, подобно тому, как это делается с помощью json / javascript?
Теги:

4 ответа

2
Лучший ответ

Вы можете использовать функцию serialize, чтобы поместить данные в формат, который можно сохранить в поле базы данных MySQL. При извлечении вы затем будете использовать функцию unserialize для восстановления переменной.

  • 0
    Я не могу поверить, что я пропустил это! Это смехотворно просто!
1

Лучшим решением, вероятно, будет использование динамического файла CSS. Сохраните значения в виде массива в своей базе данных и передайте их в файл PHP, маскирующийся как файл CSS, чтобы установить динамические значения. Проверьте это: Внедрение PHP в CSS

0

Я думаю, что Мондобб был бы совершенным. Вы можете сохранить свой CSS по умолчанию, а затем только перезаписать поля, введенные пользователем. Я также думаю, что реляционный db, такой как mysql, просто мешает вам.

0

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

Ещё вопросы

Сообщество Overcoder
Наверх
Меню