每页开头的codeigniter字母

时间:2013-07-15 02:09:04

标签: php debugging codeigniter-2

我正在开设一个我暂时托管的网站here

你会注意到我在每页开头都会得到的神秘字母'a'。我已经浏览了所有的php文件(控制器,视图,模型),无法找到这封信的来源。另一个好奇心是,当使用Firebug进行检查时,所有头部内容都没有驻留在头部标签中。它出现在body标签中,但它仍能正常运行。这两个问题有关系吗?

我在搜索互联网时发现的唯一一件事就是某些文件可能已保存为ANSI而不是UTF-8。我已经尝试使用我的编辑器将所有我的php文件保存为UTF-8,但这是一个非常缓慢的过程。任何帮助调试这种情况将不胜感激。

编辑 - 感谢您的回复,@ erman-belegu。它似乎不在任何控制器中。例如,我已经设置了404重定向,具有自己的控制器和视图。视图如下所示:

<!DOCTYPE html>
      <html>
      <head>
         <meta name="description" content="No Page">
      </head>
      <body>
         <h1>No page dude.</h1>
      </body>
    </html>

但是当用萤火虫检查时,它看起来像这样:

  <html>
    <head></head>
    <body>
      a
      <meta content="No Page" name="description">
      <h1>No page dude.</h1>
    </body>
  </html>

我使用UTFCast对所有内容进行了编码,但仍遇到同样的问题。欢迎任何帮助。

2 个答案:

答案 0 :(得分:0)

在开始时检查您的控制器或在某处打印任何打印件。检查这些页面上的所有代码,因为您打印了这些&#34; a&#34;。

也可以使用没有BOM的UTF-8。但是,我认为你不小心打印它,并且不认为这种情况会因任何其他原因而发生。

答案 1 :(得分:0)

你看到身体标签内的头部,因为神秘的“a”是你输出的第一个字符。它由浏览器的渲染引擎或firebug放在body标签内。

如果你发现你的“a”的原因 - 几乎可以肯定PHP标签之外的某些内容 - 头部将在firebug中恢复正常。

搜索“a”很棘手..我不确定你的代码库有多大,但我会说在开始输出之前就退出进程。你应该只看到“a”。然后逐步移动出口,直到你的“a”消失,你就会找到它。