Есть массив.
$array = [
[
'name' => 'name1',
'status' => 1,
'year' => 21
],
[
'name' => 'name2',
'status' => 0,
],
[
'name' => 'name3',
'status' => 0,
],
[
'name' => 'name4',
'status' => 0,
'year' => 30
],
[
'name' => 'name5',
'status' => 0,
'year' => 25
],
]
Задача. Нужно средствами ArrayHelper в Yii2 отсортировать этот массив по
"year" (как по возрастанию, так и по убыванию) таким образом, чтобы:
- пользователь со статусом 1 всегда был первым
- пользователи у которых нет ключа "year" были последними.
То есть должно получиться так.
По возрастанию:$array = [
[
'name' => 'name1',
'status' => 1,
'year' => 21
],
[
'name' => 'name5',
'status' => 0,
'year' => 25
],
[
'name' => 'name4',
'status' => 0,
'year' => 30
],
[
'name' => 'name2',
'status' => 0,
],
[
'name' => 'name3',
'status' => 0,
],
]
По убыванию:$array = [
[
'name' => 'name1',
'status' => 1,
'year' => 21
],
[
'name' => 'name4',
'status' => 0,
'year' => 30
],
[
'name' => 'name5',
'status' => 0,
'year' => 25
],
[
'name' => 'name2',
'status' => 0,
],
[
'name' => 'name3',
'status' => 0,
],
]