setcookie中Cannot modify header information-headers already sent by错误的解决方法详解


Posted in PHP onMay 08, 2013
<?php
   setcookie("username","bu",time()+3600);
   echo "aaaaa";
?>

运行有警告Warning: Cannot modify header information - headers already sent by 

下面是别人建议

方法一:
在PHP里Cookie的使用是有一些限制的。
1、使用setcookie必须在<html>标签之前
2、使用setcookie之前,不可以使用echo输入内容
3、直到网页被加载完后,cookie才会出现
4、setcookie必须放到任何资料输出浏览器前,才送出
.....
由于上面的限制,在使用setcookie()函数时,学会遇到 "Undefined index"、"Cannot modify header information - headers already sent by"…等问题,解决办法是在输出内容之前,产生cookie,可以在程序的最上方加入函数 ob_start();

ob_start :打开输出缓冲区
函数格式:void ob_start(void)
说明:当缓冲区激活时,所有来自PHP程序的非文件头信息均不会发送,而是保存在内部缓冲区。为了输出缓冲区的内容,可以使用ob_end_flush()或flush()输出缓冲区的内容。

方法二:
解决Warning: Cannot modify header information - headers already sent by ...... 前几天装了个php的大头贴系统测试,发现报错Warning: Cannot modify header information - headers already sent by ......
今天又装openads,还是出现这个问题。怒了。上网找了半天,有人说要在文件开头写上
ob_start();
失败。
后来打开 php.ini 然后把 output_buffering 设为 on 。重起appache,OK。看来这才是解决办法。

特别注意:(我就是看了这个才解决问题的)
如果使用utf-8编码,一定要去掉UTF-8中的BOM,这都是因为utf-8编码文件含有的bom原因,而php4,5都是不支持bom的。去掉bom,可以用Notepad++打开转换一下。(我就是看了这个才解决问题的)

自己解决办法

PHP4,5 都不支持utf-8编码文件中的BOM

如果文件包含BOM,设置cookie或者session 时都会报错.
如何能快速方便的去掉文件的BOM.
推荐使用 Notepad++ 软件,非常优秀的免费软件.
1.可以在设置-->首选项-->新建 默认新建UTF-8(无BOM) 

2.如果是在别处新建的php文件,在notpad++中打开如何将编码转变成 UTF-8(无BOM)
格式-->UTF-8(无BOM)  这时就可以转码了.
PHP 相关文章推荐
PHP中实现图片的锐化
Oct 09 PHP
Smarty+QUICKFORM小小演示
Feb 25 PHP
PHP中的cookie不用刷新就生效的方法
Feb 04 PHP
PHP Session 变量的使用方法详解与实例代码
Sep 11 PHP
php如何解决无法上传大于8M的文件问题
Mar 10 PHP
编译PHP报错configure error Cannot find libmysqlclient under usr的解决方法
Jun 27 PHP
php cookie中点号(句号)自动转为下划线问题
Oct 21 PHP
thinkphp在低版本Nginx 下支持PATHINFO的方法分享
May 27 PHP
PHP Header失效的原因分析及解决方法
Nov 16 PHP
PHP7扩展开发之基于函数方式使用lib库的方法详解
Jan 15 PHP
PHP使用ActiveMQ实现消息队列的方法详解
May 31 PHP
PHP中__set()实例用法和基础讲解
Jul 23 PHP
PHP 登录记住密码实现思路
May 07 #PHP
php启动时候提示PHP startup的解决方法
May 07 #PHP
深入phpMyAdmin的安装与配置的详细步骤
May 07 #PHP
基于AppServ,XAMPP,WAMP配置php.ini去掉警告信息(NOTICE)的方法详解
May 07 #PHP
wamp下修改mysql访问密码的解决方法
May 07 #PHP
使用php实现下载生成某链接快捷方式的解决方法
May 07 #PHP
解决phpmyadmin中缺少mysqli扩展问题的方法
May 06 #PHP
You might like
yii2.0之GridView自定义按钮和链接用法
2014/12/15 PHP
php实现表单多按钮提交action的处理方法
2015/10/24 PHP
基于PHP给大家讲解防刷票的一些技巧
2015/11/18 PHP
PHP7移除的扩展和SAPI
2021/03/09 PHP
jquery 获取标签名(tagName)示例代码
2013/07/11 Javascript
node.js中的events.emitter.once方法使用说明
2014/12/10 Javascript
javascript修改图片src的方法
2015/01/27 Javascript
[原创]Javascript 实现广告后加载 可加载百度谷歌联盟广告
2016/05/11 Javascript
浅谈在Vue-cli里基于axios封装复用请求
2017/11/06 Javascript
vue2.0 路由模式mode=&quot;history&quot;的作用
2018/10/18 Javascript
nodejs基础之常用工具模块util用法分析
2018/12/26 NodeJs
小程序从手动埋点到自动埋点的实现方法
2019/01/24 Javascript
vue路由守卫+登录态管理实例分析
2019/05/21 Javascript
关于layui的动态图标不显示的解决方法
2019/09/04 Javascript
nest.js 使用express需要提供多个静态目录的操作方法
2019/10/24 Javascript
vue中封装axios并实现api接口的统一管理
2020/12/25 Vue.js
Python利用pyHook实现监听用户鼠标与键盘事件
2014/08/21 Python
机器学习经典算法-logistic回归代码详解
2017/12/22 Python
python中的set实现不重复的排序原理
2018/01/24 Python
Java编程迭代地删除文件夹及其下的所有文件实例
2018/02/10 Python
解决python os.mkdir创建目录失败的问题
2018/10/16 Python
Python运维开发之psutil库的使用详解
2018/10/18 Python
Python HTML解析模块HTMLParser用法分析【爬虫工具】
2019/04/05 Python
python 非线性规划方式(scipy.optimize.minimize)
2020/02/11 Python
python用tkinter实现一个gui的翻译工具
2020/10/26 Python
css3的transform造成z-index无效解决方案
2014/12/04 HTML / CSS
什么是用户模式(User Mode)与内核模式(Kernel Mode) ?
2014/07/21 面试题
领导干部考察材料
2014/02/08 职场文书
互联网创业计划书写作技巧攻略
2014/03/23 职场文书
体育活动总结范文
2014/05/04 职场文书
2014年度安全生产目标管理责任书
2014/07/25 职场文书
七一建党日演讲稿
2014/09/05 职场文书
党性分析材料格式
2014/12/19 职场文书
色戒观后感
2015/06/12 职场文书
2016年清明节红领巾广播稿
2015/12/17 职场文书
Redis高并发缓存架构性能优化
2022/05/15 Redis