为了账号安全,请及时绑定邮箱和手机立即绑定

不能使用 Illuminate\Support\Facades\Request 类型的对象作为数组

不能使用 Illuminate\Support\Facades\Request 类型的对象作为数组

PHP
POPMUISE 2021-06-16 13:02:38
我对 api 提出的请求有问题,我想要一个像这样的 json 返回:{    "message": "OK",    "data": [        User,        ...    ],    "pager": {        "current": integer,        "total": integer    }}这是我数据库中的用户列表。我使用邮递员,但我无法真正理解我试图用谷歌找到解决方案但没有具体的问题。所以我想知道我做错了什么。public function getListUser(Request $request){    $pseudo = $request["pseudo"];    $perpage = $request["perpage"];    $users = User         ::select('username','pseudo','id','email')         ->where('pseudo','LIKE',$pseudo.'%')         ->paginate($perpage);    return response()->json([            'message'=>'OK',            'data'=>$users->items(),            'current'=>$users->currentPage(),            'total' => $users->lastpage()            ]     ,200);}我尝试获取参数:
查看完整描述

3 回答

?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

使用Input Facadeget 方法


use Illuminate\Support\Facades\Input;



$pseudo = Input::get('pseudo');

$perpage = Input::get('perpage');


查看完整回答
反对 回复 2021-06-19
?
斯蒂芬大帝

TA贡献1827条经验 获得超8个赞

如果您想将请求参数作为数组访问,则需要更改:


use Illuminate\Support\Facades\Request;

至:


use Illuminate\Http\Request;

如果您不能停止使用外观,另一种方法是使用instance. 您将不再需要参数:


public function getListUser()

{

    $request = Request::instance();

    $pseudo = $request["pseudo"];

    $perpage = $request["perpage"];

    ...

}


查看完整回答
反对 回复 2021-06-19
?
喵喵时光机

TA贡献1846条经验 获得超7个赞

您试图错误地获取查询参数。从文档

从查询字符串中检索输入

虽然输入方法从整个请求负载(包括查询字符串)中query检索值,但该方法只会从查询字符串中检索值:

$name = $request->query('name');

试试这个方法:

$pseudo = $request->query('pseudo');
$perpage = $request->query('perpage');


查看完整回答
反对 回复 2021-06-19
  • 3 回答
  • 0 关注
  • 396 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信