我正在使用 $this 在匿名函数中调用成员函数。
$this->exists($str)
PHP 5.4 没有给我带来问题,5.3 给我带来了问题。
错误是
<b>Fatal error</b>: Using $this when not in object context in
这是我的代码
class WordProcessor
{
private function exists($str)
{
//Check if word exists in DB, return TRUE or FALSE
return bool;
}
private function mu_mal($str)
{
if(preg_match("/\b(mu)(\w+)\b/i", $str))
{ $your_regex = array("/\b(mu)(\w+)\b/i" => "");
foreach ($your_regex as $key => $value)
$str = preg_replace_callback($key,function($matches)use($value)
{
if($this->exists($matches[0])) //No problems in PHP 5.4, not working in 5.3
return $matches[0];
if($this->exists($matches[2]))
return $matches[1]." ".$matches[2];
return $matches[0];
}, $str);
}
return $str;
}
}