Comment accéder aux éléments du tableau dans la boucle foreach dans Laravel
P粉312195700
P粉312195700 2023-09-11 00:04:14
0
1
582

J'ai créé un tableau personnalisé pour stocker les questions et réponses, mais chaque fois que j'essaie d'accéder à ces éléments du tableau, cela me donne 尝试读取数组上的属性“问题”(

En fait, j'ai créé un tableau personnalisé. Lorsque j'essaie de créer sans tableau personnalisé, cela fonctionne bien. Comme si obtenir des données à partir d'un modèle éloquent direct fonctionnait très bien

Voici ma réponse 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

répondre à tous(1)
P粉004287665

Les tableaux associatifs et les objets ne sont pas la même chose en php.

Ici, vous insérez la clé questionanswers 的数组推送到 questionsArray avec :

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

Vous devez donc utiliser l'accès au tableau pour le lire. Hypothèse $data$questionsArray 的元素,您将拥有 {{ $data['question'] }} 而不是 { { $data->问题 }}

Bien sûr, vous avez enveloppé une entité problématique ou un tableau associatif dans un autre tableau et l'avez placé dans $data['question]` pour que l'impression ne fonctionne pas.

Essayez peut-être quelque chose comme ceci :

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

Lisez ensuite les propriétés du problème dans le fichier blade :

@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
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal