У меня проблема.
У меня есть этот код:
<?php $q =(count($question->answers)/2) - 1; ?>
@php ($q = 3)
@php ($p = 1)
@for($i=0; $i <=(count($question->answers)/2) - 1; $i++)
<?php
$match = $question->answers->where('is_key', 0)->shuffle()->toArray();
$match = $match->unique();
dd($match['text']);
?>
<?php $option = $question->answers->where('order', $i)->where('is_key', 1)->first(); ?>
<div class="row">
<div class="column" style="border: 1px solid #e8e8e8;">
<b>{{$p}}.</b> {{$match['text']}}
</div>
<div class="column" style="border: 1px solid #e8e8e8;">
<b> {{$p}}. </b> {{$option->text}}
</div>
</div>
@php ($p++)
@endfor
Итак, у меня есть эти две колонки options
и match
.
Что мне нужно, так это группа матчей, которую нужно перетасовать.
Я пробовал это до сих пор, но когда он перетасовывает, иногда он повторяет один и тот же текст, а какой-то текст вообще не отображается.
например:.
Когда перетасовывается 1 2 3 4
, это выглядит как 1 2 1 4
или 1 2 3 3
.
Как сделать цифры уникальными при перетасовке?