У меня есть объект, который выглядит следующим образом:
РЕДАКТИРОВАТЬ фрагмент с примером
https://3v4l.org/vRZUR
вывод var_dump($registerObject)
:
{#822 ▼
+"Sleutel": 1
+"Gebouw_ID": "20250043814"
+"Toestel_ID": "BE071 (S035)"
...
+"date": "2019-03-22 08:52:39"
+"status": 1
+"done": 0
}
Мне нужно переупорядочить этот объект в соответствии с порядком массивов:
$order = [
0 => 'object_id',
1 => 'Code MCS',
2 => 'DeviceType',
...
29 => '',
30 => 'Opmerkingen',
31 => 'OPMonderhoud',
];
это то, что я пробовал;
Я приведу объект к массиву, чем использую uksort намассив и использовать массив порядка, и я объединяю это с array_search для сортировки массива.
Я думаю, что я близко, но я не уверен, что происходит не так.
$registerArray = (array) $registerObject;
uksort($registerArray, function ($a, $b) use ($order) {
return array_search($a, $order) > array_search($b, $order);
});
этовозвращает в странном порядке:
array:28 [▼
"done" => 0
"Voedingskast" => ""
"status" => 1
...
"action" => "create"
"sleutel" => 1
"OPMonderhoud" => ""
]
Я также пытался сделать массив $ order со значениями только без ключей, он дает тот же результат.