Я пытаюсь сортировать массив объектов по общему свойству, однако я не могу заставить свой параметр $ property регистрироваться во внутренней функции (я могу использовать его во внешнем OK).PHP anonymous functions scope question
Как я читал документацию, это звучало как параметр был бы доступен, я что-то не понял?
Вот что у меня есть:
public static function sortObjectsByProperty($objects, $property)
{
function compare_object($a, $b)
{
$a = $a->$property;
$b = $b->$property;
if ($a->$property == $b->$property)
{
return 0;
}
return ($a->$property > $b->$property) ? +1 : -1;
}
usort($objects, 'compare_object');
return $objects;
}
Любые советы оценили. Спасибо.
Вы можете встраивать функции в функции. – zaf