php包含html添加空格

时间:2013-09-12 20:38:33

标签: php html whitespace

我遇到多个html页面的麻烦包括。 我有主index.html但它开始有点太复杂所以我决定将它分成多个html文件,并使用php将它们中的每一个输入到单个index.php中。

index.php文件

<?php
include('head.html');
include('header.html');
include('slideshow.html');
include('pictureGalery.html');
include('footer.html');
include('closer.html');
?>

使用谷歌Chrome开发者工具我发现,php包括还包括一些空白区域(你可以看到它们之间的divs标题,内容,容器等... 通过一些谷歌搜索我发现了一些关于这个问题的弧形,如:

我还尝试导入reset.css文件(http://meyerweb.com/eric/tools/css/reset/),但它也没有用。对我来说,唯一似乎工作的方式是发布cebasso(https://stackoverflow.com/a/14362246/1784053)的方式。但我发现这种方式有点过于激动和无益。

如何解决此问题?

enter image description here

3 个答案:

答案 0 :(得分:0)

然后,最终这是由包含的文件上的意外BOM造成的: 为了将来参考,我只是简单地发布用于PHP检查的代码。

print_r(array_map('dechex', array_map('ord', str_split(file_get_contents("xxxxxxxxxxxxx.html"))))); 

我绝对更喜欢使用 Notepad ++ 或其他软件来保存非BOM 版本, 但如果仍然喜欢使用PHP删除它们,只需使用: 每次执行时都会永久删除文件中的前3个字符,因此只运行一次。

$filename="xxxxxxx.html";
$filec = file_get_contents($filename);
file_put_contents($filename,substr($filec, 3, strlen($filec)));

希望它有所帮助:D 祝好运!

答案 1 :(得分:0)

我之前有同样的问题。但是当我看到BOM字符时,我想到了一个解决方案。我不确定,但utf-8编码的这些字符。我将包含的文件保存为ansi,问题解决了。它也适用于Notepad ++中的encode in utf-8 without BOM Thanx

<强>此致

答案 2 :(得分:-1)

我会仔细查看您收录的文件。确保每个文档的顶部或底部没有空白区域。 php不会忽略空格,并且肯定会包括在内。

相关问题