将Illuminate\Http\Request转换为数组

15

我正在使用一个库,该库期望接收本机PHP数组,例如从全局$_REQUEST获得的数组。

不幸的是,在这种情况下,Illuminate\Http\Request是一个对象,并且似乎具有与本机php数组相当不同的结构。是否有方法将该对象转换为通过'$_REQUEST'获得的相同数组(在Laravel控制器方法内无法使用)。

提前致谢。

2个回答

30

Illuminate\Http\Request有一些很好的方法可以将其转换为数组。

// Where $request is an Illuminate\Http\Request instance
$request->all(); // Returns array with all elements.
$request->only(['key1', 'key2']); // Returns array with selected items
$request->except(['key1']); // Returns array with everything except key1.

你应该始终检查类中可用的方法。只需浏览文件并查看它们提供了什么。这很有趣,可以让你更好地理解 API。

Laravel在其广泛的文档中表现得非常出色,请确保充分利用它。


0

你可以将其转换为数组: $request_arr = (array) $_REQUEST;


很抱歉,由于Laravel方法内的$_REQUEST返回一个空数组,因此(array) $_REQUEST的输出也是一个空数组。 - Gilles Major
尝试这个变体 $request_arr = (array) Illuminate\Http\Request; - Max

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接