php回调函数在类中

前端之家收集整理的这篇文章主要介绍了php回调函数在类中前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
由于某些原因,我们的托管公司使用 PHP 5.2,甚至没有预安装MysqLi和PDO.

我别无选择,只能重写我的代码的一部分,使其兼容.

所以,这是我的问题:

PHP 5.2中匿名函数不支持,所以我做了以下测试,以确保我正确地更改代码

class foo{

    public function toString(){
        $arr = array("a","b");
        $arr2 = array("c","d");
        print_r(array_map('mapKeyValue',$arr,$arr2));
    }

    private function mapKeyValue($v,$k){
        return $k."='".$v."'";
    }
}

$foo = new foo();
echo $foo->toString();

但上面会给我的:

Warning: array_map() expects parameter 1 to be a valid callback,function 'mapKeyValue' not found or invalid function name in ....
PHP Warning: array_map() expects parameter 1 to be a valid callback,function 'mapKeyValue' not found or invalid function name in ....

什么是正确的方法

array_map('mapKeyValue',$arr2);

在班级内

PS:由于使用PHP 5.2,更换主机公司是否有足够的理由(我有约7个月左右的合同)

使用$this和数组作为回调:
array_map( array( $this,'mapKeyValue'),$arr2);

而且,只要确定,这是tested with PHP 5.2.17,并确认工作.

原文链接:https://www.f2er.com/php/131812.html

猜你在找的PHP相关文章