Я пытаюсь имитировать встроенное в php определение функции usort в моей реализации ниже:
class heapSort {
static function hsort(array &$array, callable $cmp_function){
// logic
}
}
class utility{
static function mycomparator(){
// logic
}
}
$array = array(5,3,8,1);
$callback = array('utility','mycomparator');
heapSort::hsort($array, $callback);
Хотя переменная $callback
является «вызываемой», почему я получаю ошибку ниже фатальной?
Аргумент 2, переданный в heapSort::hsort(), должен быть экземпляром callable.
В частности, как мне сделать/привести тип $variable
к вызываемому?
callable
не является фактическим типом до версии 5.4, см. документацию больше информации, но ваш код кажется правильным. Какая это версия PHP? - person Sammitch   schedule 04.04.2013