读书人

类方法中使用array_地图报错- Cannot

发布时间: 2013-08-26 12:17:40 作者: rapoo

类方法中使用array_map报错--- Cannot redeclare
方法定义如下:
class maaper{
......
public function getProperties(){
function getName($reflectionProperties){
return $reflectionProperties->name;
}
$domain=$this->get_domain();
$reflectionProperties=$domain->getProperties(ReflectionProperty::IS_PUBLIC);
$properties=array_map('getName', $reflectionProperties);
return $properties;
}

......
}


调用过程如下(注:$mapper_1、$mapper_2是在同一次运行时调用方法):

$mapper_1=new mapper();
$mapper_2=new mapper();

var_dump($mapper_1->getProperties()); //正确返回
var_dump($mapper_2->getProperties()); //报错 Cannot redeclare getName()


截图如下:
类方法中使用array_地图报错- Cannot redeclare




[解决办法]
function getName($reflectionProperties){
return $reflectionProperties->name;
}
无论在哪里都是定义全局函数

读书人网 >PHP

热点推荐