PHP ile array'i istediğim sırada (sort order) yapmak?
Elimde API'den gelen bir data var. Ancak ben gelen datayı kendi istediğim sırayla yeniden order etmek istiyorum.
örneğin;
gelen array içerisinde
[
{
"type": "dollar",
"team_A_value": 35.75,
},
{
"type": "euro",
"team_A_value": 33.12,
},
{
"type": "try",
"team_A_value": "0.52,
},
...
...
gibi giden bir data geldiğini düşünelim.
benim burada yapmak istediğim ise şu olacak;
$sortArray = ["try","dollar"];
çıktı istediğim sonuç ise, ben $sortArray değişkenimde "try" ve "dollar" sıralaması ile dataları getir dedim; ancak bunun dışında kalan "euro" veya diğer değerleri getirme.
"Sadece benim seçtiklerimi, benim belirttiğim sıra ile getir" demek istiyorum kısacası.
Nasıl yapabilirim?
<?php
$gelen_veri = [
[
"type" => "dollar",
"team_A_value" => 35.75,
],
[
"type" => "euro",
"team_A_value" => 33.12,
],
[
"type" => "try",
"team_A_value" => 0.52,
],
];
$sortArray = ["try","dollar"];
function customSort($a, $b) {
global $sortArray;
$a_index = array_search($a['type'], $sortArray);
$b_index = array_search($b['type'], $sortArray);
return $a_index - $b_index;
}
usort($gelen_veri, 'customSort');
print_r($gelen_veri);
?>