【旧资料整理】php 获得其他php脚本执行结果的一个方法

资料时间:2010年之前

分享时间:2010年到百度空间,空间关闭,重新整理

首先举个例子说明这个问题:

一个php脚本index.php访问后会输出一些字符串,现在想将这些字符串拦截过滤。

当然,方法很多,可以修改原文件,也可以在项目规划中合理设计将index.php的输出集中控制起来,但如果原来的脚本输出复杂,这个方法并不好,最好找到一个不修改原来文件的方法。现在分享一个经过个人尝试可以的一个方法,当然不是唯一的实现方法。

原理:用ob_start() 和 ob_end_flush() 控制输出缓冲,将输出内容输出到缓冲中,然后通过传递给ob_start()的回调函数处理缓冲。

这里列出一个将输出信息保存到变量中的方法:

<?php

...
//在这之前可以做任何工作,包括输出
$buf="";//保存输出
function callback($buffer) {
    global $buf;
    $buf.=$buffer;  //保存本次输出
    return "";       //不输出任何内容
}
ob_start("callback");  //开启输出缓冲
include "index.php";  //将原来的脚本包含进来
ob_end_flush();       //关闭输出缓冲
//在这之后可以做任何工作
,,,


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值