注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

阿飘的博客

十里平湖霜满天 寸寸青丝愁华年

 
 
 

日志

 
 

ob_start()调用callback是类的成员函数  

2011-02-12 17:17:03|  分类: php |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
通常使用ob_start()缓冲输出的时候会调用一个回调函数如:
view source
    <?php
     
    function callback($buffer)
    {
      // replace all the apples with oranges
      return (str_replace("apples", "oranges", $buffer));
    }
     
    ob_start("callback");
     
    ?>
    <html>
    <body>
    <p>It's like comparing apples to oranges.</p>
    </body>
    </html>
    <?php
     
    ob_end_flush();
     
    ?>

如果这个时候需要调用一个类的成员函数该怎么办,可能你会觉得这样ob_start(‘cai->callback’),事实上这样是不行的,真正的方式这里需要传入一个数组,数组有两个参数,array(&类的实例,成员函数),例子如下:
view source
    <?php
    class MyClass {
        public function callback($buffer) {
            // replace all the apples with oranges
            return (str_replace("apples", "oranges", $buffer));
        }
    }
    $cai = new MyClass();
    ob_start(array(&$cai,'callback'));
    ?>
    <html>
    <body>
    <p>It's like comparing apples to oranges.</p>
    </body>
    </html>
    <?php
    ob_end_flush();
    ?>

如果要类里面使用ob_start则可以将this作为第一参数:ob_start(array(&$this,’callback’));
  评论这张
 
阅读(585)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017