Php 通过字母数字值的Laravel雄辩顺序

Php 通过字母数字值的Laravel雄辩顺序,php,laravel,web-deployment,laravel-6,laravel-6.2,Php,Laravel,Web Deployment,Laravel 6,Laravel 6.2,我使用的是Laravel6.x,我有这样的行 Plot 4 Plot 5 Plot 2 Plot 4B Plot 3 Shop 2 Shop 1 Plot 2 Plot 3 Plot 4 Plot 4B Plot 5 Shop 1 Shop 2 我想要这样的结果 Plot 4 Plot 5 Plot 2 Plot 4B Plot 3 Shop 2 Shop 1 Plot 2 Plot 3 Plot 4 Plot 4B Plot 5 Shop 1 Shop 2 谢谢如果您使用的是Larav

我使用的是Laravel6.x,我有这样的行

Plot 4
Plot 5
Plot 2
Plot 4B
Plot 3
Shop 2
Shop 1
Plot 2
Plot 3
Plot 4
Plot 4B
Plot 5
Shop 1
Shop 2
我想要这样的结果

Plot 4
Plot 5
Plot 2
Plot 4B
Plot 3
Shop 2
Shop 1
Plot 2
Plot 3
Plot 4
Plot 4B
Plot 5
Shop 1
Shop 2

谢谢

如果您使用的是Laravel,您应该查看他们的收藏文档及其排序方法

从创建集合开始:

然后看看排序:

这应该能让你达到目的。如果您发布到目前为止尝试的详细信息,我们可以帮助您使其工作

如果您使用一个雄辩的模型从数据库中获取数据,那么它将作为一个集合出现,然后您只需按相关键进行排序,例如

Model::all()->sortBy('column');

请发布代码,以便我们可以尝试帮助您修复它。这需要更多详细信息。请描述用于显示数据的表、列类型和任何代码。显示您的
控制器
,您在其中编写了
方法
。。对于PHP,您可以使用
natsort($array).I have accounts table的列类型为varchar,
\App\Account::whereHas('parent',function($q){$q->where('title','Sales');})->带有('item','journals','item.Sales','item.Sales.rementers','item.Sales.user')->orderByRaw('LENGTH(title)->orderBy('title')->paginate(30)