【问题标题】:Multi Dimension array show in blade is getting error undefined offset刀片中显示的多维数组出现错误未定义偏移
【发布时间】:2020-08-06 16:11:40
【问题描述】:

刀片中显示的多维数组出现错误未定义偏移量 0。我无法使用循环显示 这是我的数组

array:3 [▼
  0 => array:6 [▼
    0 => {#280 ▼
      +"id": 30
      +"category": "wedding"
      +"sub_category": "groom"
      +"image": "30.png"
    }
    1 => {#274 ▶}
    2 => {#249 ▶}
    3 => {#281 ▶}
    4 => {#282 ▶}
    5 => {#283 ▶}
  ]
  1 => array:6 [▼
    6 => {#284 ▶}
    7 => {#285 ▶}
    8 => {#286 ▶}
    9 => {#287 ▶}
    10 => {#288 ▶}
    11 => {#289 ▶}
  ]
  2 => array:6 [▼
    12 => {#290 ▶}
    13 => {#291 ▶}
    14 => {#292 ▶}
    15 => {#293 ▶}
    16 => {#294 ▶}
    17 => {#295 ▶}
  ]
]

我想通过我的刀片展示这一点。这是我写的刀片代码。但它不起作用。

@for($i=0; $i<count($chunks); $i++)
    <div class="column-grid">
        @for($j=0; $j<count($chunks[$i]); $j++)
            <div class="single-galleries-sub-img">
                <div class="galleries-sub-img">
                    <img src="{{asset('img/galleries/gallery-images/'.$chunks[$i][$j]->image)}}"
                         alt="{{$chunks[$i][$j]->id}}">
                </div>
                <div class="galleries-sub-img-hvr">
                    <a href="{{asset('img/galleries/gallery-images/'.$chunks[$i][$j]->image)}}"
                       data-lightbox="image-4"><i class="fa fa-search-plus" aria-hidden="true"></i></a>
                </div>
            </div>
        @endfor
    </div>
@endfor

在控制器中我使用了这个功能

$galleries = DB::table('galleries')
    ->where('category','=',$request->type)
    ->paginate(18);


$chunks = $galleries->chunk(6);
$chunks = $chunks->toArray();

return view('galleries',compact('galleries','chunks'));

你能帮我如何在我的视图页面中看到这个数组。

【问题讨论】:

    标签: arrays laravel loops multidimensional-array laravel-blade


    【解决方案1】:

    在您的代码中,它将适用于第一个数组,但不适用于 2 和 3 数组,因为它使用 $chunks[$i][$j] 其中 $j 不会为 2 和 3 数组获取 0 元素。这就是为什么你会得到undefined error.

    因为数组索引在块中继续,它不会随着每个块重置

    您可以使用foreach 循环轻松地做到这一点,而不是使用 for 循环, 也因为它是数组,所以最好总是使用 foreach 循环:

    @foreach($chunks as $key => $value) {
        <div class="column-grid">
        @foreach($value as $k => $v) {
            <div class="single-galleries-sub-img">
                <div class="galleries-sub-img">
                    <img src="{{asset('img/galleries/gallery-images/'.$v->image)}}"
                        alt="{{$v->id}}">
                </div>
                <div class="galleries-sub-img-hvr">
                    <a href="{{asset('img/galleries/gallery-images/'.$v->image)}}"
                        data-lightbox="image-4"><i class="fa fa-search-plus" aria-hidden="true"></i></a>
                </div>
            </div>
        @endforeach
        </div>
    @endforeach
    

    【讨论】:

    • @tariqulanik 很高兴为您提供帮助。如果它可以帮助您解决问题。请。投票并将其标记为已接受的答案将不胜感激!
    猜你喜欢
    • 2020-02-17
    • 1970-01-01
    • 2017-03-17
    • 1970-01-01
    • 2017-06-16
    • 1970-01-01
    • 1970-01-01
    • 2015-11-24
    • 1970-01-01
    相关资源
    最近更新 更多