在头疼了一段时间之后,我发现eclipse使用设置编码UTF8(带BOM)会导致错误。当您使用include时,它会导致添加空格,在chrome中导致网页的标头在正文中呈现。
例如,在index.php上,没有任何间隙出现在 <?php 和 ?> 之间。
<?php include_once('header.php'); ?><body>test</body>
并且header.php也需要(当然不要有空格)
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>test title</title>
</head>
然后测试标题会出现在页面主体中(不是在视图源代码中,而是在Chrome控制台中)。这会在页面顶部造成间隙。
在Notepad++中打开index.php和header.php,并将编码更改为UTF8 without BOM可以解决此问题。 我该如何在Eclipse中修复它?!切换到Notepad++并不可取,因为Eclipse拥有许多有用的功能(更好的自动完成、自动版本控制等)。
对我来说仍是个谜...