在Laravel中如何在foreach循環中存取數組元素
P粉312195700
P粉312195700 2023-09-11 00:04:14
0
1
596

我創建了一個自訂數組來儲存問題和答案,但每當我嘗試存取這些數組元素時,它都會讓我 嘗試讀取數組上的屬性「問題」(

實際上,我已經建立了一個自訂陣列。當我嘗試在沒有自訂數組的情況下創建時,它工作正常。就像從直接雄辯模型中獲取數據效果很好

這是我的 JSON 回應...

@foreach ($questionsArray as $i => $data)
                              <div class=" p-3 m-1 text-left">
                                <p class="font-weight-bold">Q.{{$i + 1}} {{$data->question}}</p>
                              // error is here !
                              
                              @endforeach
$questionsArray = array();

        foreach ($questions as $question) {

            $answers = tbl_answer::where('answer_question_table_id', $question->question_id)->get();
            $questionsArray[] = array(
                "question" => array($question),
                "answers"  => array($answers)
            );
        }

P粉312195700
P粉312195700

全部回覆(1)
P粉004287665

關聯數組和物件在 php 中不是一回事。

在這裡,您正在將帶有鍵 questionanswers 的陣列推送到 questionsArray 中:

$questionsArray[] = array(
                "question" => array($question),
                "answers"  => array($answers)
            );

所以你應該使用陣列存取來讀取它。假設$data$questionsArray 的元素,您將擁有{{ $data['question'] }} 而不是{ { $data ->問題}}

當然,您已將一些問題實體或關聯數組包裝在另一個數組中,並將其放入 $data['question]` 中,因此列印輸出將不起作用。

也許嘗試這樣的事情:

$questionsArray[] = [
                "question" => $question,
                "answers"  => $answers
            ];

然後在刀片檔案中讀取問題的屬性:

@foreach ($questionsArray as $i => $data)

    <div class=" p-3 m-1 text-left">
    <p class="font-weight-bold">Q.{{$i + 1}} {{$data['question']['question_title']}}</p>
                              
@endforeach
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板