在PHP版本5.3中,可以使用以下代码调用数组中对象的方法-
$props = array_map(function($obj){ return $obj->getProp(); }, $objs);
这将比“ for”循环慢,因为它为每个元素调用一个函数-
function map($obj) { return $obj->getProperty(); } $props = array_map('map', $objs);
另外,对于5.3之前的PHP版本,可以使用以下代码-
function map($obj) { return $obj-> getProperty (); } $props = array_map('map', $objs); }
将在所有对象上调用getProperty函数,并显示特定的属性。替代-
function encode_data($val){ if(is_array($val)){ return $val = array_map('encode_data', $val); } else { return utf8_encode($val); } } $value = array_map('encode_data', $value); print_r($value);
将显示该值的utf8编码数据。