php – 如何使用对象方法作为回调函数

前端之家收集整理的这篇文章主要介绍了php – 如何使用对象方法作为回调函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在单身人类中有以下方法
private function encode($inp)
{
    if (is_array($inp) {
        return array_map('$this->encode',$inp);
    } else if is_scalar($inp) {
        return str_replace('%7E',rawurlencode($inp));
    } else {
        return '';
    }
}

这作为一个普通的功能工作正常@H_301_4@

function encode($inp)
{
    if (is_array($inp) {
        return array_map('encode',rawurlencode($inp));
    } else {
        return '';
    }
}

当在类里面使用我得到以下错误:@H_301_4@

PHP Warning: array_map(): The first
argument,‘$this->rfc_encode’,should
be either NULL or a valid callback@H_301_4@

请任何人帮我解决这个问题.@H_301_4@

PHP Manual on Callbacks

A method of an instantiated object is passed as an array containing an object at index 0 and the method name at index 1. @H_301_4@

所以试试@H_301_4@

return array_map(array($this,'encode'),$inp);

猜你在找的PHP相关文章