2013-05-06 151 views
0

我正在构建自定义Themeroller,为了反映页面中的样式更改,我在考虑一旦客户端进行样式更改,我将添加一个链接:如何拦截css获取请求

http://my.domain/styles.css?param=someoval 

然后,我会截获get请求,修改css并提供它。

如何与Apache HTTP服务器和PHP做呢?

+0

你可以建立一个与PHP的css文件。 – Heberfa 2013-05-06 19:12:39

+0

首先将css文件添加到PHP在配置文件或.htaccess中解析的文件中,然后在您的CSS文件中只写入PHP。当然,所有的文件缓存将同时从窗口出去。 – adeneo 2013-05-06 19:12:46

回答

3

的styles.css的文件必须是一个PHP脚本,例如:

<?php 
header("Content-Type: text/css"); 

$param = isset($_GET['param']) ? $_GET['param'] : null; 
?> 

body, html { 
    background-color: #FFF; 
    <?php if (isset($param)) : ?> 
     font-family: <?php echo $param; ?> 
    <?php endif; ?> 
} 
3

你可以像下面

这里你的文件的CSS

<?php 
header("Content-Type: text/css"); 

$param = $_GET['param']; // reciving params 

if($param='somethin'){ 

echo ".div{ some css }"; 

}else{ 

echo ".p{ some css }"; 

} 

你的CSS可能是叫如下

<link rel="stylesheet" type="text/css" href="styles.php?param=someoval" />