gpt4 book ai didi

php - 使用 PHP 过滤掉重复 CSS 规则的最快方法是什么?

转载 作者:行者123 更新时间:2023-11-28 14:10:13 26 4
gpt4 key购买 nike

例如,我有具有以下规则的 test.css

.fs24 { font-size: 24px; }
.fc77777 { color: #777777; }
.fs24 { font-size: 20px; }
.fc77777 { color: #787878; }

我想要的是,一个能够获取此输入和输出的 php 方法

.fs24 { font-size: 24px; }
.fc77777 { color: #777777; }

如您所见,我想通过它们的 selector 检测并过滤掉重复的 css 规则。 3 个前提必须满足:

  1. 过滤的css规则可以是1行/多行,我关心的是只要它们的选择器之前存在过,就一定要过滤掉!
  2. 为此有很多字符串操作技术,我试图找出最快的可能方法来做到这一点,原因是我在生产中拥有的 CSS 应该相当大(我们正在尝试将所有 CSS 文件合并到一个并过滤掉所有重复的规则)
  3. LIFO,后进先出,也就是不会被过滤的是第一个 CSS 规则,任何其他具有重复 selector 的 CSS 规则将被完全删除:|

最佳答案

我的方法是解析输入文件并构建一个规则字典,并将选择器作为字典键。对于每个规则,检查选择器是否已经在字典中。如果是则丢弃规则,否则将新规则添加到字典中。

完成输入解析后,根据字典的内容创建新的 .css 文件。

您需要小心处理具有多个选择器的规则。我可能会为每个选择器创建一个字典条目,但如果不进行一些额外的处理,您最终会在输出文件中出现重复代码。

关于php - 使用 PHP 过滤掉重复 CSS 规则的最快方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9577546/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com