php中 ob_start等函数截取标准输出的方法

yipeiwu_com6年前PHP代码库

最近在用PHP在cli下开发一款软件,遇到了这样的问题。我想将PHP脚本中输出的东西收集在一起,于是使用了ob_start和ob_end_flush这两个函数,确实有达到收集输出内容的作用,但同时也将这些打印到了控制台界面中。我想问的是有没有办法,阻止PHP像控制台输出信息。该软件原则上是不允许向控制台打印任何东西的。

php-cli本身脱离web服务器执行脚本,我不知道你现在获取到的数据是怎么拿到的?如果你不是通过cli执行php程序返回的值拿到的,那么可以使用ob_get_clean()

他会获取缓存内容后清除缓存区,这样可以达到你说的不显示到显示界面的效果

当然你也可以获取到缓冲区内容,然后清空(控制不要输出到控制台),然后将内容falsh到web服务器上做处理

按照以上方法已经搞定了。之前有用过这个系列的函数,太久不用,有些忘了。

现在在做的是一个基于PHP的多进程HTTP动态服务器。毕业论文,试验品而已,没什么实用性。

php-cgi程序执行结果是标准输入输出,所以只能用获取标准输入输出的方式截取输出结果,管道应该也可以,不过我不会

以上所述就是本文的全部内容了,希望大家能够喜欢。

相关文章

PHP的简单跳转提示的实现详解

PHP的简单跳转提示的实现详解

在PHP开发中,尤其是MVC框架或者项目中,会碰到很多跳转情况,比如:登录成功或失败后的跳转等等。 以下以MVC框架开发中为基础,示例讲解: 在基础控制器类中:Conrtoller.cl...

div li的多行多列 无刷新分页示例代码

div li的多行多列 无刷新分页示例代码

翻页文件一次加载了全部的内容,因而不是很适合大型的网站,而适用于数据比较少的情况。 本例未使用数据库。  PHP Code 复制代码 代码如下: <div class="...

PHP strip_tags保留多个HTML标签的方法

本文介绍了PHP strip_tags函数保留多个HTML标签的方法,可以使用第二个参数来设置不需要删除的标签,主要涉及到strip_tags的第二个参数 strip_tags 函数 语...

php中require和require_once的区别说明

include() 和require()   :语句包括并运行指定文件。include() 产生一个警告而 require() 则导致一个致命错误。换句话说,如果你想...

PHP 观察者模式的实现代码

代码如下所示:复制代码 代码如下://被察者抽象类class Observed implements SplSubject{    protected $_...