我只想知道如果使用php css文件性能明智是好還是不好的想法。我真的想做一個使用變量的php方法。使用php css文件不是個好主意嗎?
通過PHP的css文件我的意思是:
<?php header("Content-type: text/css"); ?>
你對這個想法?
我只想知道如果使用php css文件性能明智是好還是不好的想法。我真的想做一個使用變量的php方法。使用php css文件不是個好主意嗎?
通過PHP的css文件我的意思是:
<?php header("Content-type: text/css"); ?>
你對這個想法?
這是一個壞主意,但只有當你不緩存。
在服務器端,我希望您使用某種全球站點級變量,然後從中構建您的CSS。很好,只要確保你保存了文件,無論何時它需要改變(例如,從SVN簽入),它都會失效。
從客戶的角度來看,您希望確保它不必在每次加載頁面時都下載它。爲此,您需要正確設置最後修改的標題或Etag。
我知道,關於如何設置緩存頭的任何提示? – daryl 2011-05-25 01:11:33
heh。這是一個更長的答案。 :) 你可以檢查你的CSS的filemtime(),或者你有一系列依賴類嗎?如果前者,你可以使用最後修改,如果後者,你最好使用Etag。選擇一條路線,我會放棄一個解決方案。這是一個最後的mod:http://stackoverflow.com/questions/2451901/304-not-modified-issue – 2011-05-25 01:14:44
不,它在野外很常見。唯一的性能影響是當您動態輸出文件時,這可以通過服務器端(和客戶端)緩存輕鬆緩解。
我不認爲這是一個壞主意,我目前正在這樣做。在我的框架中,我動態連接了兩個獨立文件中的兩個CSS組,如網站主CSS(佈局,表單等)以及一些特定模塊(如果存在)。所以,他們可以分開緩存。我還包括一些使用php變量的動態路徑。
我會選擇靜態CSS文件 - 即使它們是動態生成的。這允許使用諸如SASS/SCSS之類的工具,並且與「理解CSS的編輯」更好地發揮作用,並避免使用「太聰明的廢話」。 (我認爲通常有更好的方法來解決這個問題。) – 2011-05-25 01:11:12