php – preg_replace_callback()问题
发布时间:2020-12-13 13:42:38 所属栏目:PHP教程 来源:网络整理
导读:我正在使用preg_replace_callback来查找和替换实时链接的文本链接: http://www.example.com 至 a href='http://www.example.com'www.example.com/a 我提供函数的回调函数在另一个类中,所以当我尝试: return preg_replace_callback($pattern,"Utilities::Li
我正在使用preg_replace_callback来查找和替换实时链接的文本链接:
http://www.example.com 至 <a href='http://www.example.com'>www.example.com</a> 我提供函数的回调函数在另一个类中,所以当我尝试: return preg_replace_callback($pattern,"Utilities::LinksCallback",$input); 我收到错误声称该功能不存在.有任何想法吗?
在PHP中使用类方法作为回调时,必须使用数组形式的回调.也就是说,您创建一个数组,其第一个元素是类(如果方法是静态的)或类的实例(如果不是),第二个元素是要调用的函数.例如.
class A { public function cb_regular() {} public static function cb_static() {} } $inst = new A; preg_replace_callback(...,array($inst,'cb_regular'),...); preg_replace_callback(...,array('A','cb_static'),...); 您正在调用的函数当然必须在您使用回调的范围内可见. 有关有效回调的详细信息,请参见http://php.net/manual/en/language.pseudo-types.php. 注:阅读那里,似乎从5.2.3开始,只要回调函数是静态的,就可以使用你的方法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |