解析PHP中ob_start()函数的用法


Posted in PHP onJune 24, 2013

ob_start()函数用于打开缓冲区,比如header()函数之前如果就有输出,包括回车/空格/换行/都会有"Header had all ready send by"的错误,这时可以先用ob_start()打开缓冲区PHP代码的数据块和echo()输出都会进入缓冲区而不会立刻输出.当然打开缓冲区的作用很多,只要发挥你的想象.可以总结以下四点:

1.用于header()之前
ob_start(); //打开缓冲区
echo /"Hellon/"; //输出
header("location:index.php"); //把浏览器重定向到index.php
ob_end_flush();//输出全部内容到浏览器
?>

2.phpinfo()函数可获取客户端和服务器端的信息,但要保存客户端信息用缓冲区的方法是最好的选择.
ob_start(); //打开缓冲区
phpinfo(); //使用phpinfo函数
$info=ob_get_contents(); //得到缓冲区的内容并且赋值给$info
$file=fopen(/'info.txt/',/'w/'); //打开文件info.txt
fwrite($file,$info); //写入信息到info.txt
fclose($file); //关闭文件info.txt
?>

3.静态页面技术
ob_start();//打开缓冲区
?>
php页面的全部输出
$content = ob_get_contents();//取得php页面输出的全部内容
$fp = fopen("output00001.html", "w"); //创建一个文件,并打开,准备写入
fwrite($fp, $content); //把php页面的内容全部写入output00001.html,然后……
fclose($fp);
?>

4.输出代码
Function run_code($code) {
If($code) {
ob_start();
eval($code);
$contents = ob_get_contents();
ob_end_clean();
}else {
echo "错误!没有输出";
exit();
}
return $contents;
}

PHP 相关文章推荐
检查url链接是否已经有参数的php代码 添加 ? 或 &
Feb 09 PHP
PHP extract 将数组拆分成多个变量的函数
Jun 30 PHP
PHP跨时区(UTC时间)应用解决方案
Jan 11 PHP
php函数指定默认值方法的小例子
Dec 04 PHP
Php中使用Select 查询语句的实例
Feb 19 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
Jan 22 PHP
php删除文本文件中重复行的方法
Apr 28 PHP
php实现的数字验证码及数字运算验证码
Jul 30 PHP
php封装的mongodb操作类代码
Aug 06 PHP
PHP 进度条函数的简单实例
Sep 19 PHP
php和C#的yield迭代器实现方法对比分析
Jul 17 PHP
laravel 实现向公共模板中传值 (view composer)
Oct 22 PHP
关于ob_get_contents(),ob_end_clean(),ob_start(),的具体用法详解
Jun 24 #PHP
关于php操作mysql执行数据库查询的一些常用操作汇总
Jun 24 #PHP
解析crontab php自动运行的方法
Jun 24 #PHP
解析关于java,php以及html的所有文件编码与乱码的处理方法汇总
Jun 24 #PHP
使用PHP遍历文件目录与清除目录中文件的实现详解
Jun 24 #PHP
探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释
Jun 24 #PHP
PHP中的函数-- foreach()的用法详解
Jun 24 #PHP
You might like
windows下PHP APACHE MYSQ完整配置
2007/01/02 PHP
php下使用SMTP发邮件的代码
2008/01/10 PHP
PHP上传文件时文件过大$_FILES为空的解决方法
2013/11/26 PHP
PHP SPL标准库之数据结构栈(SplStack)介绍
2015/05/12 PHP
Laravel如何实现自动加载类
2019/10/14 PHP
JavaScript性能优化 创建文档碎片(document.createDocumentFragment)
2010/07/13 Javascript
Json对象与Json字符串互转(4种转换方式)
2013/03/27 Javascript
Jquery attr("checked") 返回checked或undefined 获取选中失效
2013/10/10 Javascript
扩展IE中一些不兼容的方法如contains、startWith等等
2014/01/09 Javascript
jQuery遍历之next()、nextAll()方法使用实例
2014/11/08 Javascript
jQuery检测返回值的数据类型
2015/07/13 Javascript
javascript获取当前的时间戳的方法汇总
2015/07/26 Javascript
js中javascript:void(0) 真正含义
2020/11/05 Javascript
JavaScript数组合并的多种方法
2016/05/22 Javascript
Angularjs使用过滤器完成排序功能
2017/09/20 Javascript
浅谈在不使用ssr的情况下解决Vue单页面SEO问题(2)
2018/11/08 Javascript
JS闭包原理与应用经典示例
2018/12/20 Javascript
在vue项目中引入vue-beauty操作方法
2019/02/11 Javascript
浅谈JavaScript_DOM学习篇_图片切换小案例
2019/03/19 Javascript
js的新生代垃圾回收知识点总结
2019/08/22 Javascript
将Django框架和遗留的Web应用集成的方法
2015/07/24 Python
Python Request爬取seo.chinaz.com百度权重网站的查询结果过程解析
2019/08/13 Python
Python实现代码块儿折叠
2020/04/15 Python
Jupyter Notebook折叠输出的内容实例
2020/04/22 Python
你需要学会的8个Python列表技巧
2020/06/24 Python
Python实现删除某列中含有空值的行的示例代码
2020/07/20 Python
Python 实现劳拉游戏的实例代码(四连环、重力四子棋)
2021/03/03 Python
Nike德国官网:Nike.com (DE)
2018/11/13 全球购物
抽象方法、抽象类怎样声明
2014/10/25 面试题
设计师求职信模板
2014/05/06 职场文书
银行员工考核评语
2014/12/31 职场文书
中秋晚会致辞
2015/07/31 职场文书
2016年中学法制宣传日活动总结
2016/04/01 职场文书
sqlserver2017共享功能目录路径不可改的解决方法
2021/04/16 SQL Server
css display table 自适应高度、宽度问题的解决
2021/05/07 HTML / CSS
Redis做数据持久化的解决方案及底层原理
2021/07/15 Redis