我想根据用户选择生成一个CSS文件。
我正在考虑哪种方式最好。例如,使用数组并将它们保存在XML文件中或使用像Mongo DB这样的键/值存储。
通过这种方式,可以从XML或键/值数据库中提取数组,进行修改和保存。之后,将根据该数据生成CSS文件。这是为了确保始终正确创建CSS文件。
除非我使用EAV,否则MySQL在存储数组时似乎很笨拙。这就是为什么我提到像mongo DB这样的键/值数据库。所有这一切的原因是我只想创建一个不错的用户界面,用户可以通过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 :(得分:2)
您可以使用serialize
函数将数据放入可存储在MySQL数据库字段中的格式。在检索时,您将使用unserialize
函数来恢复变量。
答案 1 :(得分:1)
最好的解决方案可能是使用动态CSS文件。将值保存为数据库中的数组,并将它们传递给伪装成CSS文件的PHP文件以设置动态值。看看这个:Embedding PHP In CSS
答案 2 :(得分:0)
为什么不将数据保存为CSS文件,然后在用户想要进行更改时解析,加载并保存回该文件?然后,您无需担心在请求时生成文件。
答案 3 :(得分:0)
我认为Mongodb会很完美。您可以保留默认CSS,然后只覆盖用户输入的字段。我也认为像mysql这样的关系数据库会妨碍你。