Модель codeigniter не может найти рутину usort.

У меня есть модель в моем приложении 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);

Можете ли вы сказать мне, что мне не хватает? Спасибо!

0

Решение

Пожалуйста, попробуйте с этим:

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

Для получения дополнительной информации, пожалуйста, смотрите документы

9

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]