PHP按内容对目录进行排序

时间:2013-02-03 01:40:18

标签: php arrays sorting

我正在尝试根据每个目录中文本文件的内容对目录列表进行排序。

到目前为止,我正在显示目录列表:

$user = $_GET['user'];
$task_list = $_GET['list'];

if ($handle = opendir("../users/$user/tasks/$task_list/"))
{
    $files = array();
    while (false !== ($file = readdir($handle)))
    {
        if ($file != "." && $file != ".." && $file != ".htaccess")
        {
            array_push($files, $file);
        }
    }
    closedir($handle);
}

//Display tasks
sort($files);
foreach ($files as $file)
{
    echo "$file"; 
}

每个目录中都有一个名为due.txt的文本文件,我想根据此文件due.txt的内容对目录列表进行排序。

到目前为止,我已经尝试过:

$user = $_GET['user'];
$task_list = $_GET['list'];

if ($handle = opendir("../users/$user/tasks/$task_list/"))
{   
    $files = array();   
    $tasksSort = array();
    while (false !== ($file = readdir($handle)))
    {
        if ($file != "." && $file != ".." && $file != ".htaccess")
        {
            $taskSort = file_get_contents("../users/$user/tasks/$task_list/$file/due.txt");
            array_push($files, $file);
            array_push($tasksSort, $taskSort);
        }
        closedir($handle);
    }

    //Sort tasks and display
    sort($tasksSort);
    foreach ($files as $file)
    {
        echo "$file"; 
    }
}

但是$tasksSort数组似乎没有任何要排序的内容......?

1 个答案:

答案 0 :(得分:0)

sort($tasksSort);
foreach ($tasksSort as $file)
{
    echo "$file"; 
}