如何在Laravel中的foreach循环中传递多个变量

时间:2020-05-06 13:20:54

标签: arrays laravel loops for-loop foreach

我确信有一个简单的方法可以做到,即使应该使用for循环,也请让我知道如何做。我是Laravel的新手。我的PagesController中有一个像这样的数组:

public function faq()
    {
        $faqs=array(
            'questions'=>[
                'question1',
                'question2',
                'question3'
                ]
        );

        return view('frontend.pages.faq')->with($faqs);
}

并且我的常见问题页面包含以下代码:

 @if (count($questions)>0)
    @foreach($questions as $question)
    <div id="accordion">
        <div class="card card--faq mb-2">
            <div class="bdv-btn card-header" id="headingOne">
                <h5 class="mb-0">
                    <a class="btn btn-link w-100" data-toggle="collapse" data-target="#collapseOne" aria-controls="collapseOne">
                        <span class="fa fa-question-circle"></span>
                        {{$question}}
                    </a>
                </h5>
            </div>
            @endforeach()
            @endif

由于是手风琴,每个问题和答案的ID都是唯一的。而且我想创建诸如heading {{$ headingCount}}和折叠{{“ $ collapseCount}}

之类的东西

以前的一些文章建议使用for循环将是更好的方法,但是我不确定如何做到这一点。

2 个答案:

答案 0 :(得分:0)

您可以在$key => $value中使用foreach(),如下所示:

@foreach($questions as $key => $question)
    <div id="accordion">
        <div class="card card--faq mb-2">
            <div class="bdv-btn card-header" id="heading{{$key}}">
                <h5 class="mb-0">
                    <a class="btn btn-link w-100" data-toggle="collapse" data-target="#collapse{{$key}}" aria-controls="collapse{{$key}}">
                        <span class="fa fa-question-circle"></span>
                        {{$question}}
                    </a>
                </h5>
            </div>
        </div>
    </div>
@endforeach()

答案 1 :(得分:0)

尝试一下:

public function faq()
{
     $questions = [ 'question1', 'question2', 'question3'];

    return view('frontend.pages.faq')->with('questions',$questions);

}