我想知道,在尝试实现所有这些微优化时,将PHP文件作为css或javascript提供的优缺点是什么?
我不完全确定瓶颈在哪里,如果有的话.我会假设在相同的css和PHP文件之间,“纯”的css文件将稍微更快,因为它不需要解析PHP代码.但是,在PHP文件中,您可以更好地控制标题,这可能更重要(?).
目前,我正在对“触发器”文件进行filemtime()检查,并且使用一些PHP voodoo从其中编写单个压缩的css文件,并与定义组中的其他几个文件相结合.这将创建一个像css / groupname / 301469778.css这样的文件,PHP模板捕获并更新具有新文件名的html标签.它似乎是最安全的方法,但是我不太喜欢服务器缓存在多次编辑后填满垃圾css文件.我也不打扰这样做只是为某些页面加载的小“帮助”CSS文件.
>如果99%的输出是由PHP生成的,那么使用PHP直接输出css / js的内容有什么危害(如果有的话)? (假设没有PHP错误)
>如果使用PHP,这是一个好主意,mod_rewrite文件使用css / js扩展的任何边缘情况的浏览器误解?不能伤害不需要?
> css和javascript有什么独立的指南/方法吗?我会假设他们是平等的.
>哪个更快:一个单一的css文件,带有几个@imports,或者是一个带有多个readfile()调用的PHP文件?
>使用PHP还有什么其他方法会影响速度?
>文件一旦在浏览器中缓存,是否有所作为?
>只要您的代码正常,就不会有任何伤害.浏览器不会有任何区别.
>不需要mod_rewrite.浏览器通常不关心URL(通常甚至不关于MIME类型).
> CSS文件通常较小,通常一个文件就足够了,因此无需组合.请注意,组合不同目录的文件会影响CSS中引用的图像,因为它们与CSS URL保持相关
>肯定readfile()会更快,因为@import需要多个HTTP请求,并且您希望尽可能地减少
>当比较单个HTTP请求时,PHP可能会稍慢一些.但是,除非您脱机执行,否则您无法组合文件.
>否,但浏览器缓存是不可靠的,不正确的Web服务器配置可能导致浏览器不必要地重新获取URL.
这是不可能给你一个更具体的答案,因为它很大程度上取决于你的项目细节.