Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 动态css样式表的奇怪行为_Php_Css - Fatal编程技术网

Php 动态css样式表的奇怪行为

Php 动态css样式表的奇怪行为,php,css,Php,Css,很多时候,我使用了我自己“学会”的css技术。当我依赖于一个动态样式表,我可以把它放在html文档中,我使用的css文件不是css,事实上,它们是php文件。示例:style.css.php。一直都很有效。但现在我遇到了麻烦,我以前从未见过这种奇怪的行为。我的fundo.css.php文件具有以下简单格式: body { background: url(../arquivos/imagens/<?php // some php functions.. echo "coyote.

很多时候,我使用了我自己“学会”的css技术。当我依赖于一个动态样式表,我可以把它放在html文档中,我使用的css文件不是css,事实上,它们是php文件。示例:
style.css.php
。一直都很有效。但现在我遇到了麻烦,我以前从未见过这种奇怪的行为。我的
fundo.css.php
文件具有以下简单格式:

body {
    background: url(../arquivos/imagens/<?php

// some php functions.. 
echo "coyote.jpg";

?>) top left no-repeat;
}
漂亮但如果浏览器显示背景!在Firebug控制台(与Chrome中的开发工具一样)的网络选项卡中,浏览器试图查找的url是:

http://localhost:8080/ultimocaso/arquivos/imagens/%EF%BB%BF%EF%BB%BF%EF%BB%BF%EF%BB%BF%EF%BB%BFcoyote.jpg
如果我只是使用css普通文件的内容,它就像一个魅力

有谁知道告诉我为什么会发生这种事和/或如何解决

编辑


我正在使用Adobe Dreamweaver编辑我的文件,在我的首选项->新建文档中,包含BOM签名的选项已禁用

问题是您在PHP中包含了具有UTF-8 BOM的文件

尽管您无法看到此BOM表(字节顺序标记),但您可以想象文件实际上包含如下内容:

%EF%BB%BF<?php
echo 'this is myinclude.php';
?>
实际上是这样理解的:

<?php
// some code
?>
%EF%BB%BF
<?php
echo 'this is myinclude.php';
?>
<?php
// some code
?>

%EF%BB%BF

< >避免代码中间的BOM的一种方法是使所有的东西都包含在它们的影响较小的地方,比如在文件的开头。另一种方法(我个人的选择)是将导入的文件保存为没有BOM的格式,如常规UTF-8。

您的“一些php函数”是否包含对
include
require
的调用?这些“奇怪的字符”看起来像UTF BOM,可能是被其他文件插入的。是的,确实有一个包含。我发现了一些关于BOMs的东西,但我认为它不是…那么你是否发现了问题?你还在寻找答案吗?我还在寻找答案,因为我仍然不知道我的
require\u once
文件有什么问题。我所有的文件都是utf-8编码的,其中包含的文件没有打印任何内容。@Kobi我不明白你的意思。。
<?php
// some code
include('myinclude.php');
// some code
?>
<?php
// some code
?>
%EF%BB%BF
<?php
echo 'this is myinclude.php';
?>
<?php
// some code
?>