J'essaie de trier un tableau d'objets par une propriété commune, mais je ne peux pas obtenir mon paramètre $ property pour s'enregistrer dans la fonction interne (je peux l'utiliser dans la fonction externe OK).PHP fonctions anonymes portée question
La façon dont j'ai lu la documentation, il semblait que le paramètre serait disponible, ai-je mal compris quelque chose?
Voici ce que j'ai:
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;
}
Tout conseil apprécié. Merci.
Vous pouvez intégrer des fonctions dans des fonctions. – zaf