为了账号安全,请及时绑定邮箱和手机立即绑定

为什么直接跳走了,改成session_start()也没有报?

为什么直接跳走了,改成session_start()也没有报?

PHP
慕妹3242003 2023-04-19 18:18:35
header前或者session_start()等前面不能有输出吧,否则会报warning级别的错误,但是为什么没有报。版本:5.3.5用的wamp    <?php         echo 'hello world';        header('location:http://www.google.com');直接跳走了,改成session_start()也没有报错误级别 php.ini 设置的是error_reporting = E_ALL | E_STRICT
查看完整描述

2 回答

?
HUX布斯

TA贡献1876条经验 获得超6个赞

看看phpinfo(),是不是把output_buffering打开了。如果是的话就没问题。

查看完整回答
反对 回复 2023-04-21
?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

确认到底有没有warning提示:

  • 看网页上有没有打印,你已经看了,没有

  • 看error log里有没有,xampp/wamp默认的设置是比较注重安全的(而不是默认注重开发易用性的),不会把报错信息直接显示在网页上

如果都看过了,还是找不到warning记录,检查为什么没有显示也没有记入日志(假设会产生warning):
打印phpinfo()确认你的运行环境加载的是哪个php.ini文件,定位好php.ini文件后

  • 检查error_reporting设置(你已经检查了,但不确定是不是使用了别的ini文件)

  • 检查display_error设置

  • 检查error_log设置

如果上述检查都没问题(ini文件配置了要求记warning,你却没在日志文件中找到),则说明当前环境配置不会产生warning。


查看完整回答
反对 回复 2023-04-21
  • 2 回答
  • 0 关注
  • 86 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信