>  기사  >  백엔드 개발  >  一个session的报错问题 很简单 谁帮忙解释下

一个session的报错问题 很简单 谁帮忙解释下

WBOY
WBOY원래의
2016-06-20 12:35:461111검색

( ! ) Notice: A session had already been started - ignoring session_start() in D:\php2\wamp\www\shop\top.php on line 2
Call Stack
# Time Memory Function Location
1 0.0010 177552 {main}( ) ..\index.php:0
2 0.0020 183496 include( 'D:\php2\wamp\www\shop\top.php' ) ..\index.php:8
3 0.0020 183528 session_start ( ) ..\top.php:2

谁可以帮忙解释下这个报错说的是什么意思 第一行是说session重复启用吗   那下面几行什么 time 什么memory 这些具体说什么
怎么处理 谢谢大家


回复讨论(解决方案)

之所以出现这种情况是页面中多次使用了 session_start()函数
有以下两种解决办法:
1) in php.ini file set session.autostart to 0 配置php.ini 设置session.autostart =0
session.auto_start = 0
2) In your code use this line 在出现错误的页面中编辑你的代码如下:
if (!session_id()) session_start();
instead of
session_start();

之所以出现这种情况是页面中多次使用了 session_start()函数
有以下两种解决办法:
1) in php.ini file set session.autostart to 0 配置php.ini 设置session.autostart =0
session.auto_start = 0
2) In your code use this line 在出现错误的页面中编辑你的代码如下:
if (!session_id()) session_start();
instead of
session_start();

那请问下面几行说的是什么意思啊

标志你调用的位置

你最好是把 session_start() 写在一个方法里面,在里面判断是否开启了 session ,以后就调用那个方法设置/调用session就行了

下面几行也是说你重复调用了 session_start() 

A session had already been started - ignoring session_start() 
session_start()  被重复执行了
这是 php5.4 加入的错误警告,很不友好!
@session_start() ;
屏蔽掉就可以

下面是 xdebug 给出的调用栈信息
Time 自开始执行的时间,单位:秒
Memory 内存使用量,单位:字节
Function 执行的函数
Location 所在文件:行

你重复调用了 session_start() 

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.