我想在PHP中打包一個css文件...因此,我爲css文件編寫了頭文件,併爲其添加了php擴展,因此... css.php。問題是,如果該頁面已被用作包含...或者這個新標題是否與包含在該頁面中的框架衝突?包括:css文件擴展名爲php?
回答
gnarf釘了它。
我做的:
<link rel="stylesheet" type="text/css" media="screen" href="<? echo TMPL ?>css/name-of-file.css.php">
,然後在.css.php文件的頂部:
<?
header('Content-Type: text/css');
// print out your php-driven css...
?>
如果includer腳本不發送任何輸出,它將起作用,否則您將有一個「標題已發送」錯誤。
在includer中使用ob_start()可以避免這種情況,並使所有的工作。
html框架與php包含無關,所以在這種情況下根本沒有衝突。
如果您有一個名爲css.php
的文件,請確保第一行設置正確的內容類型標題。如果還沒有,您可能還想將會話設置內容(如果有的話)拆分爲bootstrap.php
。從DATABSE加載一些樣式信息的一個簡單的例子:
<?php
header("Content-Type: text/css");
include('bootstrap.php');
// fetch some information to print out our styles
$result = mysql_query("SELECT * FROM site_styles");
while ($row = mysql_fetch_assoc($result)) {
echo $row["selector"]." {\n".$row["css"]."\n}\n";
}
?>
從其他PHP文件,只輸出標籤包括css.php,你不希望使用PHP include()
功能此任務!
<link rel="stylesheet" type="text/css" href="css.php"/>
雖然因爲大多數瀏覽器會緩存您的css文件很積極,你可能會發現,動態改變該文件的內容並沒有做太多好。你可以強制通過添加GET參數到鏈接的href的更新:
<link rel="stylesheet" type="text/css" href="css.php?<?php echo $cssversion ?>"/>
雖然這是怎麼回事,每次完全刷新你的CSS文件中的參數變化。出於這個原因,通常更好的做法是提供靜態css文件。如果你有一些需要從配置參數等加載的樣式,這些樣式不會經常改變,那麼第一個例子應該對你很好。
糟透了,看到你的回答有鯊魚。 – emc 2013-04-15 17:38:26
HTML文件:
<link rel="stylesheet" type="text/css" href="css.php"/>
css.php文件:
<?php
header("Content-type: text/css; charset=utf-8");
//your php + css code goes here
?>
如果在你的CSS.php文件第一行代碼是不是header("Content-type: text/css; charset=utf-8");
它不會工作
- 1. PHP包含文件擴展名?
- 2. 分割.txt文件包括擴展名爲.txt
- 3. 如何大寫文件名但不包括擴展名
- 4. 批量重命名文件擴展名,包括子目錄
- 5. php文件擴展名
- 6. Django的擴展不包括子文件
- 7. 允許htaccess文件擴展名爲.php
- 8. php檢查文件擴展名爲
- 9. drop .php擴展名爲文件夾 - htaccess
- 10. PHP上傳的文件擴展名爲
- 11. 的Apache + PHP沒有「.PHP」文件擴展名,但包括路徑信息
- 12. Firefox擴展 - 包括manifest.json中的CSS
- 13. SQLite:.db文件擴展名.sqlite文件擴展名爲
- 14. Gradle:Jar任務不包括具有未知擴展名的文件
- 15. 重寫規則不工作時,文件擴展名包括
- 16. 錯誤包括但.h擴展名
- 17. 文件擴展名爲
- 18. 文件擴展名爲
- 19. PHP文件名和擴展名恢復
- 20. 的.htaccess擴展名的網頁,404當包括擴展
- 21. 的URL CSS文件名和擴展
- 22. PHP - 識別附件文件擴展名
- 23. PHP包括(JavaScript和CSS文件)
- 24. 文件不包含c擴展名
- 25. C包含文件擴展名
- 26. 文件擴展名
- 27. 文件擴展名[]
- 28. 文件擴展名
- 29. 文件擴展名
- 30. 文件擴展名
我可能會要求您要使用這個'什麼css.php'文件來服務?某種形式的數據庫生成或什麼? – gnarf 2009-09-19 01:00:07
你能顯示一些代碼嗎?至於情況是什麼,我有點失落。 – strager 2009-09-19 01:07:29