Короче говоря, мне нужно отсортировать массив объектов, используя usort, и мне нужно сообщить нам, какие поля в объектах сортировать.Использование PHP usort с условными результатами
Очевидным решением является создание десятков отдельных функций сортировки usort, но это кажется сорт избыточным и уродливым. В большинстве случаев объекты будут сортироваться по вводу из $ _GET, но не всегда, поэтому я не хочу сортировать по переменным $ _GET напрямую.
Возможно ли, чтобы функция usort использовала функцию сортировки текущего класса? Что-то вроде этого
<?php
class myClass
{
public $myArray;
private $by;
public function filter($by)
{
$this->by = $by;
usort($this->myArray, /* Somehow point to the following function: */);
}
private function srt($a, $b)
{
$c = $this->by; // <- reaching a third variable
// ...
}
}
?>
+1. Очень хорошая идея. – pltvs