ini_set():标头已发送。您目前无法在代码点火器中更改会话模块的 ini 设置



我使用CI 3.1.10。在index.php文件中,我使用开发环境。

MY控制器

<?php
class Test extends CI_Controller {
public function index(){
echo CI_VERSION; 
}
}
?>


当我尝试访问测试类时,它会显示此错误

这是向我显示警告的图像。

错误屏幕截图附

ob_start();

在根目录中CCD_ 1的第一行。这是有效的。

对我来说,发生这个错误是因为我在加载会话库之前加载的助手类中,意外地在php右括号?>之后添加了一些空行。

为了进一步理解为什么会发生这种情况,php应该在将响应体发送到浏览器或控制台之前设置头部。

在使用headersession_startset_cookie等方法修改标头之前,通常怀疑的是print_rprintecho或空白。

这在这里也得到了很好的回答;标头已发送";PHP 中的错误

在我的例子中,是文件开头<? php"之前的空行。

从控制器中移除Close标记?>然后检查

打开config.php并添加ob_start((;它将有助于延迟HTTP头的发送

看看下面的示例

<?php
defined('BASEPATH') OR exit('No direct script access allowed');
ob_start();

关于代码点火器。这是关于区分大小写的问题。我的文件名在更改为Header.php后是Header.php。它对我有效。

在我使用deley/auth的情况下,我在调用我的login.php时也出现了同样的错误。

问题是index.php0不是文件中的第一个语句。

把它放在第一位,一切都很好。在所有使用此服务的my.php中<? php require 'vendor/autoload.php'; include ('root.php'); include($root."db_settings.php"); require_once 'errormsg.php';

祝好运

index.php文件上的

在顶部粘贴这个

ob_start(); 

这对我有用

相关内容

  • 没有找到相关文章