#zend-framework #function #array-map
#zend-framework #функция #array-map
Вопрос:
Я создал функцию в файле начальной загрузки и хочу вызвать ее с помощью функции 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:
Если ваша функция является методом объекта, вам также необходимо передать объект.
Попробуйте
array_map(array($this, 'rootCreator'), $controls);
Если это не тот же объект, вам нужно передать ему экземпляр. Для статических методов вы можете передать имя класса.