PHP usort(): сортировка массива с объектами по числу в строке ключа name
Доброго времени суток. Столкнулся с проблемой в PHP с сортировкой массива с объектами внутри.
Есть массив, внутри которого лежат объекты
Array ( [0] => stdClass Object ( [id] => 288 [name] => Библиотека №1 имени А.С. Грибоедова Отдел "Детский центр имени Х.К. Андерсена" ) [1] => stdClass Object ( [id] => 289 [name] => Библиотека №1 имени А.С. Грибоедова Отдел "Культурный центр имени В.Я. Вульфа" ) [2] => stdClass Object ( [id] => 290 [name] => Библиотека №1 имени А.С. Грибоедова Отдел чтения для детей и юношества ) [3] => stdClass Object ( [id] => 291 [name] => Библиотека №2 имени Ю.В. Трифонова Отдел экономической информации ) [4] => stdClass Object ( [id] => 292 [name] => Библиотека №3 имени Н.А. Добролюбова Отдел семейного чтения ) [5] => stdClass Object ( [id] => 293 [name] => Библиотека №3 имени Н.А. Добролюбова Детский отдел ) [6] => stdClass Object ( [id] => 294 [name] => Библиотека №1 имени А.С. Грибоедова ) )
На данный момент они сортируются по id. А необходимо чтоб сортировка шла по числу, которое указано после символа №, по возрастанию.То есть чтоб после 1 было не 10, а 2. Это неполный массив, там есть названия, которые начинаются не со слова Библиотека, но у всех после символа № идет число. Подскажите как написать функцию для usort с такой фильтрацией?
Тут все расписано...
спасибо