代码点火器模型可以';找不到usort例程


codeigniter model can't find usort routine.

我的codeigniter应用程序中有一个模型,usort使用以下回调函数:

    function comp_primary($a, $b) 
    {
            if ($a['pri'] == $b['pri']) {
                    return $a['weight'] - $b['weight'];
            }
            return strcmp($a['pri'], $b['weight']);
    }

我用相同的模型来命名它,只是用了一种不同的方法:

 usort($srv_records, 'comp_primary')

我得到的错误信息是:

严重性:警告-->usort()要求参数2是有效的回调,找不到函数"comp_primary"或函数名称无效/var/www/html/widgets/manager/models/widget_model.php 187

我试图将comp_primary上的函数签名更改为如下所示:

private function comp_primary($a, $b)

我还试着改变我对它的称呼,就像这样:

 usort($srv_records, '$this->comp_primary');

  usort($srv_records, $this->comp_primary);

你能告诉我我缺了什么吗?谢谢

请尝试这个:

usort($srv_records, array($this,'comp_primary'));

有关更多信息,请参阅文档