我有一个php文件被用作动态样式表。所以它是一个非常大的文件,由php生成的css / values。这是一个例子。
<?php
header("Content-Type: text/css");
?>
.top {
top: <?= $topValue ?>px;
}
More css...
在一个单独的文件中,我试图从php文件中获取生成的内容并将其存储在某个地方的页面上,这样我以后可以使用javascript获取它。因此,我尝试的方法是将内容存储在隐藏输入中。像这样。
<?php
$file = file_get_contents("FILE_URL.php");
?>
<input type="hidden" name="hidden-css" value="<?= $file ?>" />
然而,当我这样做时,该值包含来自文件的原始php,并且还注释掉打开/关闭php标记。例如,它做的事情就像&#39;&lt; !? - PHP&#39;而不是&#34;&lt; ?PHP的&#34;和&#34;? - &gt;&#34;而不是&#34;?&gt;&#34;。这会弄乱页面上的常规html,并且不会在输入中正确存储值。
所以我问你,如何修复当前情况或更好地存储样式表的内容,以便我以后可以抓住它并使用javascript进行处理?
编辑:生成的css中可能还存在引号问题。我也不确定如何解决这个问题。
编辑:如果一切正常,这就是应该存储的方式。
<input type="hidden" name="hidden-css" value="
.top {
top: 54px;
}
" />
答案 0 :(得分:1)
您不能为此目的使用file_get_contents()函数 - 它只是获取文件内容(即它不会首先在该文件上运行PHP)。
相反,正如user574632建议的那样,您必须使用include
,因此您的代码应如下所示:
<input type="hidden" name="hidden-css" value="<?php include 'FILE_URL.php'; ?>" />
希望能解决您的问题。
(另一个快速说明:鉴于您的主文件是HTML而不是CSS,您可能需要在输入之后再次声明该内容标题,如下所示:
<?php header('Content-Type: text/html; charset=utf-8'); ?>
)