次のような入力があります。
array
0 =>
array
'task_uid' => '10214'
'createdate' => '2012-04-18 09:47:40'
'task_id' => '92966'
1 =>
array
'task_uid' => '10214'
'createdate' => '2012-04-18 09:47:40'
'task_id' => '92967'
createdate で安定した方法でソートする必要があります。私はこの関数を作成します:
function compareTime($a, $b) {
$a_timestamp = strtotime($a["createdate"]);
$b_timestamp = strtotime($b["createdate"]);
if ($a_timestamp > $b_timestamp)
return -1;
else if ($a_timestamp < $b_timestamp)
return 1;
else
return 0;
//return strcmp($a["createdate"], $b["createdate"]);
}
と
usort($input, array( $this, "compareTime"));
古いものから新しいものへと並べ替える必要がありますが、この混合データです。また、datacreate が同じ場合は、位置を変更しないでください。しかし、compareTime で使用すると:
return strcmp($a["createdate"], $b["createdate"]);
次に、例から要素を変更します(私にとっては間違っています)。入力をどのようにソートすればよいか答えてもらえますか?