我需要创建定制的网页模板,并给我的客户形式,以配置样式。
我用 LESS 创建了网站样式,当客户更改表单中的某些设置(并单击submit)时,PHP会根据更少的代码和客户设置动态创建CSS文件。
我正在使用less.php。但是从更少的动态生成CSS是非常慢的。这就是为什么我希望用较少的变量创建"CSS文件“,并且我希望使用变量从"CSS文件”自动生成最终的CSS文件,并且只使用str_replace()将变量更改为值。它将是更快的解决方案!
示例:
减文件
@color: red;
.container {
.box {color: @color; }
}最终CSS文件
.container .box {color: red; }但是,我需要生成"CSS文件“,并使用更少的变量,如下所示:
.container .box {color: @color; }如何生成这样的文件?
发布于 2015-03-03 08:57:39
你似乎不明白什么是“少”,“少”是一个将代码编译成CSS的CSS预处理器。CSS不支持变量,所以您所要求的内容没有实际意义。您正在使用较少的PHP,但您希望实际删除该功能。这个问题对我来说毫无意义。
发布于 2015-03-03 09:02:29
我的回答不会给你你想要的,但也许它会改变你的想法。
实际上,您现在正在做的事情是好的,但是正如您所说的,为每个用户一直编译它对每个人都是有害的。这就是为什么您应该实现缓存机制。将已编译(最终)的CSS保存为服务器上的文件,并将用户指向该文件。在编译脚本中添加代码,检查缓存的文件是否比一天(或一小时,但不少于一天)更早。如果它是旧的,那么编译新的。
这样,您将只编译一次一天。例如,白天。
如果没有缓存版本,也可以将其设置为始终编译。这将是有帮助的,如果你改变了很多东西,然后你可以删除缓存的CSS和新的一个将产生。
如果您有一些可以更改较少文件的管理面板,那么只需在执行的代码中添加另一行代码,以强制重新编译或只删除(unlink())缓存的文件。
缓存是一种祝福,它对您、您的用户和您的服务器都有好处。
https://stackoverflow.com/questions/28827412
复制相似问题