默認情況下,Symfony Finder Component按ASC
順序排序文件。如何使用Symfony Finder組件按DESC順序對文件進行排序?
//sorting by ASC order
$finder->files()->in($this->getDumpPath())->sortByModifiedTime();
如何按DESC
排序文件?
默認情況下,Symfony Finder Component按ASC
順序排序文件。如何使用Symfony Finder組件按DESC順序對文件進行排序?
//sorting by ASC order
$finder->files()->in($this->getDumpPath())->sortByModifiedTime();
如何按DESC
排序文件?
你可以使用那種方法,並給出自己的排序匿名函數(見Symfony\Component\Finder\Iterator\SortableIterator
)
$finder->sort(function ($a, $b) { return strcmp($b->getRealpath(), $a->getRealpath()); });
這是所有關於排序的提示。 這種工作總是一樣的。 請看看usort function。
更確切地說,我剛剛從Symfony\Component\Finder\Iterator\SortableIterator
開始了代碼snipet,並且我已經恢復了返回條件。
在Symfony的\分量\搜索\迭代器\ SortableIterator可以看到ASC情況下,這樣的DESC的情況是:
$finder->files()->in($this->getDumpPath())->sort(
function ($a, $b) {
return ($b->getMTime() - $a->getMTime());
}
);
symfony的取景器組件不能做到這一點,你必須通過遞減排序,得到後導致 – 2014-09-24 13:23:21
你也可以使用'sort'方法,並給你自己的排序匿名函數(請參閱Symfony \ Component \ Finder \ Iterator \ SortableIterator) – 2014-09-24 13:24:54
@YannEugoné你可以給我例舉匿名函數的例子嗎? – 2014-09-24 13:26:03