无法在PHP中按日期对多维数组进行排序

乔希

我目前正在尝试按到期日期在PHP中对多维数组进行排序,但是排序失败。我曾尝试在此应用几种解决方案,但没有运气。有人可以为下面的代码提供适当的解决方案吗?

function getTasksTeam($user) {

    $master = array();
    $master["record"] = array();


    $teamArray = array();
    $teams = mysql_query("SELECT * FROM users WHERE _id = '$user'") or die(mysql_error());
    if (mysql_num_rows($teams) > 0) {
                        while(($row =  mysql_fetch_assoc($teams))) { 
                            $teamArray = explode(':', $row["TEAM"]);

                        }
    }

    for ($i = 0;$i < count($teamArray);$i++) {
        $teamId = $teamArray[$i];

        $query = mysql_query("SELECT * FROM tasks WHERE RESPONSIBLE_TYPE = '0' AND RESPONSIBLE = '$teamId' AND STATUS <> 3") or die(mysql_error());
        if (mysql_num_rows($query) > 0) {
            while (($row = mysql_fetch_assoc($query))) {
                    $record = array();
                    $record["id"] = $row["_id"];
                    $record["task"] = $row["TASK"];
                    $record["part_number"] = $row["PART_NUMBER"];
                    $record["due"] = $row["DATE_DUE"];
                    $record["responsible"] = $row["RESPONSIBLE"];
                    $record["status"] = $row["STATUS"];
                    array_push($master["record"], $record);

            }
        }
    }

    usort($master["record"], 'date_sort');

    $master["success"] = 1;
    header('Content-type: application/json');
    echo json_encode($master);

 }

 function date_sort($a, $b) {
    return strcmp($a['due'], $b['due']); 
 }
伊斯梅尔·RBOUH

你可以用usortstrtotime这样的:

usort($master["record"], function($a, $b) {
    return strtotime($a['due']) - strtotime($b['due']);
});

我希望这能帮到您。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章