callback 的时候在有些php版本下报出Unable to call custom function

摘要:

  接到一个站长反馈页面信息展示失败,拿到服务器权限开启调试一看,发现报错了,报错的地方是一个preg_replace_callback方法中Unable to call custom  replacement function。而奇怪的是,其他系统其他地方的preg_replace_callback调用没有其他问题。后经过测试发现是callback写法问题造成,特此记文。

 

正文:

     出现错误的代码调用,源代码书写如下:

$content = preg_replace_callback('/正则/', 'PwHook::_pregReplace', $content);

然而,采用array的方式书写则又正常:

1 $content = preg_replace_callback('/正则/', array(self, '_pregReplace'), $content);

而同样的第一种写法,在用call_user_func_array的方法中也在这台服务器上出现同样的Unable to call constom function的问题,同样改成第二种方法即可。

看来第一种写法还是会有什么问题,还是第二种方法靠谱点

 

speech.gif posted on 2013-01-24 10:52 肖虾米 阅读( ...) 评论( ...) 编辑 收藏
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值