gpt4 book ai didi

php - 如何在 Laravel 中按特定值排序?

转载 作者:行者123 更新时间:2023-12-02 07:24:03 24 4
gpt4 key购买 nike

我需要允许用户在 Laravel 中按列的特定值进行排序。在 SQL 中我可以用按列排序 = 5但是默认的 Laravel orderBy 函数似乎不支持这个。

我找到了 orderByRaw 函数并且可以通过它来完成,但由于我排除了用户输入的值,我担心 SQL 注入(inject)的可能性。

该值是相关表的 ID,因此我可以在模型上运行查找并从返回的模型中检索 ID,这样用户的输入就不会直接添加到查询中。例如:

$role = Role::find($userInputValue);
$query->orderByRaw('role_id = ' . $role->id . ' desc');

有没有更简单的方法来实现这一目标?

最佳答案

从未听说过这种语法顺序,但您可以像这样在原始查询中转义:

$query->orderByRaw('role_id = ? desc',[$role->id]);

关于php - 如何在 Laravel 中按特定值排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36007877/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com