在 Laravel 5.3 集合中使用 version_compare

Using version_compare in Laravel 5.3 collection

所以我有一个集合,其中有一个 属性 版本号作为字符串。我想按版本号对合集进行排序。

我在网上找到这段代码,但是它需要一个一维数组作为第一个参数。

usort($a, 'version_compare');

关于如何做到这一点有什么想法吗?

也许我可以在上面的代码中使用 pluck 和 sort,然后在原始集合上使用 toArray() 并按排序后的数组进行排序。我相信某处有一个功能。但如果你们有其他想法,我会很高兴听到。

答案是将排序方法设置为第二个参数。像这样:

$plugin->versions->sortBy('version', SORT_NATURAL)

这样就可以了:o)