Php 为foreach()问题提供的Laravel参数无效
我正试图从网站主页上的Steam服务中获得一份清单。但是我得到一个错误:Php 为foreach()问题提供的Laravel参数无效,php,laravel,Php,Laravel,我正试图从网站主页上的Steam服务中获得一份清单。但是我得到一个错误:为foreach()提供的参数无效。 我的刀片: @foreach(json_decode($giveaway->items) as $item) <img class="giveaway-item-img" src="https://steamcommunity-a.akamaihd.net/economy/image/class/570/{{$item->
为foreach()提供的参数无效。
我的刀片:
@foreach(json_decode($giveaway->items) as $item)
<img class="giveaway-item-img" src="https://steamcommunity-a.akamaihd.net/economy/image/class/570/{{$item->classid}}">
</div>
<div class="giveaway-item-name">{{$item->name}}</div>
@endforeach
但每次我出错。可能是什么问题,如何修复错误?默认情况下,将返回一个对象。您需要提供true
作为获取关联数组的第二个参数
@foreach(json_decode($giveaway->items, true) as $item)
默认情况下,将返回一个对象。您需要提供true
作为获取关联数组的第二个参数
@foreach(json_decode($giveaway->items, true) as $item)
请使用此代码
@foreach (json_decode($giveaway->items?:"{}") as $item)
我认为$giveway->items的值为空请使用此代码
@foreach (json_decode($giveaway->items?:"{}") as $item)
我认为$giveway->items的值为空我可以看到您在php中使用了这个值:
$items=PagesController::sortByChance(json_decode(json_encode($this->\u getInfoOfGame($game)));
您真的需要在这里使用json_编码,然后使用json_解码吗
返回数组吗$this->\u getInfoOfGame($game)
是否返回数组PageController::sortByChange()
- 将数据作为数组发送到您的视图(这样更容易调试),这取决于您如何编写代码,但我个人不认为在视图中使用json_decode(…)
让我们知道它是如何运行的。我可以看出您在php中使用的是:
$items=PagesController::sortByChance(json_decode(json_encode($this->\u getInfoOfGame($game)));
您真的需要在这里使用json_编码,然后使用json_解码吗
返回数组吗$this->\u getInfoOfGame($game)
是否返回数组PageController::sortByChange()
- 将数据作为数组发送到您的视图(这样更容易调试),这取决于您如何编写代码,但我个人不认为在视图中使用json_decode(…)
让我们知道它是如何运行的。不,不起作用。.我在数据库中拥有的所有信息,我检查并调试这些信息,你确定
$giveway->times
包含有效的json字符串吗?var_dump给我结果:字符串(22)“Crimson Wyvern大括号”不,不起作用..我在数据库中的所有信息,我检查并调试信息,你确定$giveway->times
包含有效的json字符串吗?var_dump给我结果:string(22)“Crimson Wyvern Bracers”你能发布dd(json解码($giveway->items))
string(22)“Crimson Wyvern Bracers”所以它不是数组。它只是字符串…,你不能处理每个字符串。哦,好吧。我会在这里试着做一个jsontry来调试PagesController::sortByChance(json_decode(json_encode($this->\u getInfoOfGame($game));
,不要假设json_解码或编码发送了一个有效的数据,用于$this->\u getInfoOfGame($game)
,您可以将其返回值设置为类似于return$data?:[];
的值,以便在存在数据时返回数据,或者可以发布dd(json_decode($giveway->items))
字符串(22)“Crimson Wyvern大括号”所以它不是数组。它只是字符串…,你不能处理每个字符串。哦,好吧。我会在这里试着做一个jsontry来调试PagesController::sortByChance(json_decode(json_encode($this->\u getInfoOfGame($game));
,不要假设json_解码或编码发送了一个有效的数据,用于$this->\u getInfoOfGame($game)
,您可以将其返回值设置为类似return$data?:[];
的值,以便在存在数据时返回数据或数组(json的有效数据)变量转储给我结果:字符串(22)“Crimson Wyvern大括号”但是有些DB表是空的:created_at,updated_at,是的,现在我看到了,这个字符串。但是我不知道如何修复这个问题并使正常的JSONC。你可以在$giveway->items中共享确切的内容。你不能为循环执行它。你必须像这样存储数据{'classid':'your_classid','name':'name}如果数据不是json,请隐藏blockvar_dump给我结果:string(22)“Crimson Wyvern大括号”但是有些DB表是空的:created_at,updated_atyes,现在我看到了,这个字符串。但是我不知道如何修复这个问题并使正常的JSONC。你可以在$giveway->items中共享确切的内容。你不能在for循环中执行它。你必须像这样存储数据{'classid':'your_classid','name':'name'。如果数据不是json,请隐藏该块