Hej Udviklere,
Jeg er igang med at lave en filter funktion lidt ligesom array_filter.
min funktion applyFilter($arraylist, $func) modtager to argumenter hvor det første er et array af hvilken som helst type, og det andet argument er en callback funktion. Den returnerer et array af samme type som $arraylist.
class Filter
{
[...]
static public function applyFilter($arraylist, $func)
{
$ret_array = array();
for($i=0; $i<count($arraylist); $i++)
if($func($arraylist[$i])) (LINJE 18)
$ret_array[] = $arraylist[$i];
return $ret_array;
}
[...]
}
Når jeg på følgende måde kalder applyFilter() får jeg fejlen:
Fatal error: Function name must be a string in E:\web\api\class_filter.php on line 18
$callback = create_function("$item", "return ($item->getStatus() == 1);");
$array = Filter::applyFilter($array, $callback);
("$item->getStatus()" returnerer et heltal)
Håber nogen derude kan hjælpe - på forhånd tusind tak for hjælpen.
Indlæg senest redigeret d. 26.09.2008 18:47 af Bruger #12144