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
无限级别菜单的实现
Oct 09 PHP
PHP学习笔记之三 数据库基本操作
Jan 17 PHP
php函数指定默认值方法的小例子
Dec 04 PHP
如何使用jQuery+PHP+MySQL来实现一个在线测试项目
Apr 26 PHP
php数组随机排序实现方法
Jun 13 PHP
Yii编程开发常见调用技巧集锦
Jul 15 PHP
Docker配置PHP开发环境教程
Dec 21 PHP
/etc/php-fpm.d/www.conf 配置注意事项
Feb 04 PHP
laravel5.4利用163邮箱发送邮件的步骤详解
Sep 22 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
Jan 22 PHP
PHP使用openssl扩展实现加解密方法示例
Feb 20 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
新浪SAE云平台下使用codeigniter的数据库配置
2014/06/12 PHP
PHP中的类型约束介绍
2015/05/11 PHP
PHP通过加锁实现并发情况下抢码功能
2016/08/10 PHP
php版微信返回用户text输入的方法
2016/11/14 PHP
PHP双向链表定义与用法示例
2018/01/31 PHP
PHP7新功能总结
2019/04/14 PHP
Laravel Validator 实现两个或多个字段联合索引唯一
2019/05/08 PHP
JavaScript操作XML 使用百度RSS作为新闻源示例
2012/02/17 Javascript
dtree 网页树状菜单及传递对象集合到js内,动态生成节点
2012/04/14 Javascript
关于IE BUG与字符串截取substr的解决办法
2013/04/10 Javascript
浅析JavaScript中的类型和对象
2013/11/29 Javascript
javascript实现存储hmtl字符串示例
2014/04/25 Javascript
JavaScript取得键盘按下方向键是哪个的方法
2015/08/04 Javascript
js实现完美兼容各大浏览器的人民币大小写相互转换
2015/10/29 Javascript
Ajax使用原生态JS验证用户名是否存在
2020/05/26 Javascript
jQuery基于xml格式数据实现模糊查询及分页功能的方法
2016/12/25 Javascript
[01:33:25]DOTA2-DPC中国联赛 正赛 Elephant vs IG BO3 第一场 1月24日
2021/03/11 DOTA
Python 错误和异常小结
2013/10/09 Python
python实现Adapter模式实例代码
2018/02/09 Python
Python3.5装饰器典型案例分析
2019/04/30 Python
python实现五子棋人机对战游戏
2020/03/25 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
Python引入多个模块及包的概念过程解析
2020/09/21 Python
python爬虫请求头的使用
2020/12/01 Python
python help函数实例用法
2020/12/06 Python
python可视化 matplotlib画图使用colorbar工具自定义颜色
2020/12/07 Python
CSS3中使用RGBA设置透明度的示例
2015/08/04 HTML / CSS
详解移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
2016/12/15 HTML / CSS
工程班组长岗位职责
2013/12/30 职场文书
精彩广告词大全
2014/03/19 职场文书
合作经营协议书
2014/04/17 职场文书
酒店前台辞职书
2015/02/26 职场文书
2015新学期校长寄语(3篇)
2015/03/25 职场文书
党课主持词大全
2015/06/30 职场文书
远程教育学习心得体会
2016/01/23 职场文书
python编程项目中线上问题排查与解决
2021/11/01 Python