array_map не может найти функцию в Bootstrap - PullRequest
0 голосов
/ 02 мая 2011

Я создал функцию в файле Bootstrap и хочу вызвать ее с помощью функции array_map .но он показывает мне эту ошибку:

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

Это мой код, который вызывает array_map:

$controls = array('products','productsubcat','newssubcat');
array_map('rootCreator', $controls);

Это мой код функции:

public function rootCreator($cotroller)
{
    $frontController = Zend_Controller_Front::getInstance();
    $defaults = array('module'=>'default' ,'controller'=> $cotroller , 'action'=>'info' );
    $productRoute = new Zend_Controller_Router_Route($cotroller . '/:id/:title', $defaults);
    $router = $frontController->getRouter();
    $router->addRoute($cotroller, $productRoute);
}

1 Ответ

5 голосов
/ 02 мая 2011

Если ваша функция является методом объекта, вам также необходимо передать объект.

Попробуйте

array_map(array($this, 'rootCreator'), $controls);

Если это не тот же объект, вам нужно передать ему экземпляр.Для статических методов вы можете передать имя класса.

...