PHP包括意外打印

pie*_*bie 2 html php

我正在尝试使用PHP包含或要求这样:

        <div id="menu">
          <?php 
            include("tmpl/links.php");
          ?>
        </div>
Run Code Online (Sandbox Code Playgroud)

它包括链接,但它也打印一些垃圾.它在菜单上方打印:

        
Run Code Online (Sandbox Code Playgroud)

这对我来说并不意味着什么.如果我使用include或require,就会发生这种情况.这是links.php,为了更好的衡量标准:

      <ul>
        <li>
          <a href="index.php">Home</a>
        </li>
        <li>
          <a href="schedule.php">Schedule/Results</a>
        </li>
        <li>
          <a href="roster.php">Roster</a>
        </li>
        <li>
          <a href="coaches.php">Coaching Staff</a>
        </li>
        <li>
          <a href="aboutus.php">About Us</a>
        </li>
        <li>
          <a href="prospective.php">Prospective Players</a>
        </li>
        <li>
          <a href="links.php">Links</a>
        </li>
        <li>
          <a href="photos.php">Photos</a>
        </li>
        <li>
          <a href="contactUs.php">Contact Us</a>
        </li>
        <li>
          <a href="https://www.facebook.com">Facebook</a>
        </li>
      </ul>
Run Code Online (Sandbox Code Playgroud)

任何人都可以帮我弄清楚如何消除垃圾()?

Ari*_*iel 5

这是UTF-16 BOM(字节顺序标记).

解决方案:永远不要使用UTF-16.

将文件另存为UTF-8.


sar*_*old 5

你找到了一个叫Byte Order Marker的东西- 一些Windows程序喜欢添加这些字节(根据Unicode标准的建议),以帮助他们弄清楚如何在将来再次解析这些文件.

我建议使用不同的文本编辑器notepad.exe; vim或类似的东西应该让你删除那些字节没有太多的麻烦,然后只要你坚持不在你的文件中插入垃圾的编辑器,他们就不会回来.