【问题标题】:require_once() adds line-break at the beginning of filerequire_once() 在文件开头添加换行符
【发布时间】:2016-07-22 15:45:47
【问题描述】:

这是我的代码的一部分:

<?php
ob_start();
session_start();
require_once('../engine/class.admin.php');
$admin = new Admin;
 //some code
if(!isset($_COOKIE['logged']) && !isset($_SESSION['logged']) ) {
    //some code
} else {
    require_once('header.php');
}
ob_flush();

当我试图加载这个页面时,PHP 在页面的开头添加了一个 CRLF 标签。一切看起来都很好,当我删除两个 require_once() 标记时,没有这些文件就无法运行此代码。我需要从哪里开始寻找解决问题的方法?

【问题讨论】:

  • ../engine/class.admin.php的内容是什么?
  • 检查CRLF 在哪里。可能在包含某些文件的&lt;?php 标记之前。
  • 您可以随时忽略 php 脚本中的尾随 ?&gt;。这通常是不需要的换行符的来源
  • class.admin.php 包含一个类和多行注释。也没有php结束标签
  • 只是一个猜测:尝试将new Admin; 更改为new Admin();(只是因为我从未见过没有括号的)

标签: php mysql newline require-once


【解决方案1】:

已修复:我已将 IDE 的编码更改为没有 BOM 的 UTF-8,此问题消失了。我还必须覆盖任何包含的文件以使用相同的编码。

【讨论】:

    猜你喜欢
    • 2017-09-11
    • 2017-02-27
    • 1970-01-01
    • 1970-01-01
    • 2013-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多