我在类中使用ob_start
回调函数时遇到一些麻烦。在网上搜索时,我发现了如何做到这一点!所以我得到了它的语法,但我遇到了一个新问题,我无法在google上找到解决方案。
所以我有一个标题类, 头类中与此问题相关的方法如下:
nameBlock()
callback($buffer)
startHeaders()
在startHeaders()方法的开头我调用了ob_start()..
ob_start(array($this, 'callback'));
以下是它正在调用的回调方法:
function callback($buffer){
$buffer = str_replace("<!!>nameBlock<!!>", $this->nameBlock(), $buffer);
return $buffer;
}
由于我不知道的原因,它没有看到“$ this-&gt;”的方法。
答案 0 :(得分:-1)
您可以尝试这样做。
ob_start(function($buffer) use ($this) {
// code here....
});
http://php.net/manual/en/function.ob-start.php第一个参数应该是可调用的,而不是数组。
答案 1 :(得分:-1)
(代表OP发布)。
我在输入问题时想出了问题。
方法:
nameBlock()
打印出内容
print "X";
应该什么时候回来。
return "X";