-2

次のような内容を持つ $result という名前の配列があります。

Array (    
        [1114_435] => stdClass Object
        (
            [uid] => 435
            [v_first_name] => fHerter
            [v_last_name] => Herter
            [id] => 1114
            [v_title] => Morning Stretch
            [fk_resident_id] => 435
            [v_location] => Front Lawn
            [i_started_date] => 1357054200
        )

[1114_444] => stdClass Object
    (
        [uid] => 444
        [v_first_name] => fXYZ
        [v_last_name] => XYZ
        [id] => 1114
        [v_title] => Morning Stretch
        [fk_resident_id] => 444
        [v_location] => Front Lawn
        [i_started_date] => 1357054200
    )

[1114_448] => stdClass Object
    (
        [uid] => 448
        [v_first_name] => fDavidson
        [v_last_name] => Davidson
        [id] => 1114
        [v_title] => Dinner
        [fk_resident_id] => 448
        [v_location] => Front Lawn
        [i_started_date] => 1357051000
    )
)

i_started_dateに基づいて並べ替えたい。ksort、asort などを使用してみましたが、うまくいきませんでした。適切に使用していなかったのかもしれません。どんな助けでも大歓迎です。

ありがとう!

4

1 に答える 1

1

次のようなことを試してください:

function sortArray($data)
{

    $sortArray = array();

    foreach($data as $dt)
    {
        foreach($dt as $key=>$value)
        {
            if(!isset($sortArray[$key]))
            {
                $sortArray[$key] = array();
            }

        $sortArray[$key][] = $value;
        }
    }

    $orderby = "1"; //change this to whatever key you want from the array
    array_multisort($sortArray[$orderby],SORT_ASC,$data);

return $data;
}
于 2013-10-07T07:11:58.593 に答える