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实现mysql数据库备份类
Mar 20 PHP
单一index.php实现PHP任意层级文件夹遍历(Zjmainstay原创)
Jul 31 PHP
thinkphp实现多语言功能(语言包)
Mar 04 PHP
php使用glob函数快速查询指定目录文件的方法
Nov 15 PHP
PHP程序员常见的40个陋习,你中了几个?
Nov 20 PHP
修改WordPress中文章编辑器的样式的方法详解
Dec 15 PHP
PHP实现的oracle分页函数实例
Jan 25 PHP
Symfony2安装的方法(2种方法)
Feb 04 PHP
linux平台编译安装PHP7并安装Redis扩展与Swoole扩展实例教程
Sep 30 PHP
老生常谈PHP数组函数array_merge(必看篇)
May 25 PHP
PHP实现的堆排序算法详解
Aug 17 PHP
PHP实现字符串大小写转函数的功能实例
Feb 06 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
德生PL990,目前市面上唯一一款便携式插卡蓝牙全波段高性能收音机
2021/03/02 无线电
PHP防盗链代码实例
2014/08/27 PHP
PHP生成压缩文件实例
2015/02/07 PHP
在WordPress中实现评论头像的自定义默认和延迟加载
2015/11/24 PHP
PHP实现时间比较和时间差计算的方法示例
2017/07/24 PHP
如何用javascript判断录入的日期是否合法
2007/01/08 Javascript
Javascript学习笔记6 prototype的提出
2010/01/11 Javascript
JS 无限级 Select效果实现代码(json格式)
2011/08/30 Javascript
JQuery判断子iframe何时加载完成解决方案
2013/08/20 Javascript
浅析offsetLeft,Left,clientLeft之间的区别
2013/11/30 Javascript
jQuery Validate 验证,校验规则写在控件中的具体实例
2014/02/27 Javascript
table insertRow、deleteRow定义和用法总结
2014/05/14 Javascript
理解javascript回调函数
2014/12/28 Javascript
JS实现消息来时让网页标题闪动效果的方法
2016/04/20 Javascript
JS中BOM相关知识点总结(必看篇)
2016/11/22 Javascript
详解AngularJS验证、过滤器、指令
2017/01/04 Javascript
VUE axios上传图片到七牛的实例代码
2017/07/28 Javascript
js实现简单放大镜效果
2020/03/07 Javascript
python数据结构之链表的实例讲解
2017/07/25 Python
Linux下python3.6.1环境配置教程
2018/09/26 Python
我喜欢你 抖音表白程序python版
2019/04/07 Python
Python Selenium 之数据驱动测试的实现
2019/08/01 Python
django自带的权限管理Permission用法说明
2020/05/13 Python
Django中的AutoField字段使用
2020/05/18 Python
canvas仿写贝塞尔曲线的示例代码
2017/12/29 HTML / CSS
屈臣氏越南官网:Watsons越南
2021/01/14 全球购物
请问软件开发中的设计模式你会使用哪些
2015/05/13 面试题
机电一体化大学生求职信
2013/11/08 职场文书
《小小雨点》教学反思
2014/02/18 职场文书
端午节活动策划方案
2014/03/09 职场文书
求职简历自荐信
2014/06/18 职场文书
2014年英语教师工作总结
2014/12/03 职场文书
2016关于预防职务犯罪的心得体会
2016/01/21 职场文书
html5移动端禁止长按图片保存的实现
2021/04/20 HTML / CSS
css3 利用transform-origin 实现圆点分布在大圆上布局及旋转特效
2021/04/29 HTML / CSS
python lambda 表达式形式分析
2022/04/03 Python