array_map 在 Bootstrap 中找不到函数

问题描述 投票:0回答:1

我在 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);
}
php function zend-framework array-map
1个回答
5
投票

如果你的函数是一个对象的方法,你也需要传递该对象。

尝试

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

如果不在同一个对象上,则需要向其传递一个实例。对于静态方法,您可以传递类名。

© www.soinside.com 2019 - 2024. All rights reserved.