PHP Session_status() == PHP_SESSION_NONE 有时显示会话未开始

PHP Session_status() == PHP_SESSION_NONE Sometimes Showing Session Not Started

我在 Google 和 Whosebug 上进行了很好的搜索,看看是否有其他人遇到过这种情况,但我似乎找不到答案。

基本上,我在本地服务器上开发我的网站已进入后期阶段,我有一个似乎无法解决的错误。

当我加载其中一个页面时,我经常会收到一条 SESSION NOT STARTED 消息,消息来自:

if (session_status() == PHP_SESSION_NONE) { die('SESSION NOT STARTED');
}//SESSION NEEDS TO START TO CHECK USERS

它位于 header.php 中,在正文打开后在 index.php 上调用。 (以防万一会话没有开始,或者我忘记了,错误到处都是。)

就在 index.php 的顶部(以及每隔一页)session_start();打开会话,所以会话肯定已经开始了...如此;

<?php
error_reporting(E_ALL);
ini_set('display_errors', '1');
//Connect MYSQL
include 'mysql_conn.php';
include 'functions.php';
//START SESSION
session_start();

如果您刷新页面,消息就会消失,我似乎无法通过清除缓存/重新启动浏览器/使用隐私浏览或类似的方式重新创建它。

我在想也许它会在 "new" 会话开始时将其关闭,除非我只是做错了? 这种情况非常罕见,很难确定到底是什么原因造成的。

还是应该在任何形式的输出之前调用session_status?

谢谢,感谢任何帮助

编辑:运行 PHP 5.6.28

尝试在包含任何文件之前移动 session_start()