在PHP类中插入一个CSS文件


Insert a CSS file within a PHP class

我有一个小问题,我自己解决不了
我创造了一种";"网络引擎";,它是我从几个类中构建出来的
主类,获得";主题的";内部构件被称为";逻辑";。

这个逻辑类包括网站所需的所有文件。我把它做成这样,这样每个创建这样网站的开发人员都可以使用这个类中给出的函数。

我现在想创建一个函数,允许这些开发人员包含一个CSS文件。但事实证明这相当困难。

到目前为止,我尝试了这个:

public function include_css($path_to_css) {
    $path_to_css = $this->project_name . THEMES . "/" . ACTIVE_THEME . "/" . $path_to_css;
    if(file_exists($path_to_css)) {         
        ?>
        <html>
            <head>
                <link rel="stylesheet" type="text/css" href=" <?php echo $path_to_css; ?>" />
            </head>
        <?php 
    } else {
        return false;
    }
}
/* Idea number 2 */
public function include_css($path_to_css) {
    $path_to_css = $this->project_name . THEMES . "/" . ACTIVE_THEME . "/" . $path_to_css;
    if(file_exists($path_to_css)) {         
        echo "
        <html>
            <head>
                <link rel='stylesheet' type='text/css' href='".$path_to_css."' />
            </head>
        ";
    } else {
        return false;
    }
}

请注意,未经验证的属性是在一个复杂的问题中声明的,所以如果我把这些粘贴在这里,这将是一篇很长的文章。

我刚刚得到这个控制台错误:http://127.0.0.1/vpm2/themes/numberOne/css/test.css404(未找到),这意味着没有这样的文件。有趣的是,这是正确文件的确切路径!

我缺什么了吗?

我找到了解决方案。显然CSS路径似乎是错误的。它需要看起来像这样:

$path_to_css = THEMES . "/" . ACTIVE_THEME . "/" . $path_to_css;

所以结果看起来是这样的:

themes/numberOne/test.css

之前看起来是这样的:

/vpm2/themes/numberOne/test.css