如何检查两个数组之间的匹配与foreach在laravel刀片? [英] How to check matches between 2 arrays with foreach in laravel blade?
本文介绍了如何检查两个数组之间的匹配与foreach在laravel刀片?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
< select name =tagsmultiple required>
@foreach($ tags as $ name)
@foreach($ item-> tags as $ itemtag)
@if($ name == $ itemtag-> name)
< option value ={{$ name}}selected> {{$ name}}< / option>
@else
< option value ={{$ name}}> {{$ name}}< / option>
@endif
@endforeach
@endforeach
< / select>
$ tags数组:
{9:Acoustic,3,Angry,6,Autumn,10,Banjo, : 低音, 14: 快乐, 12: 寒冷, 35: 脏, 8: 电动, 22: 的Epiphone, 24: ESP, 19: 挡泥板, 33: 恐怖, 16: 有趣, 18: 吉布森, 30: Gretsch的, 32: 常规 ,1,快乐,20,Ibanez,23,Jackson,31,Les Paul,28,Martin,15 21:Paul Reed Smith,27,Redwood,2,Sad,29,Schecter,17,Sleepy,34 7:Spring,4,Summer,26,Taylor,11,Ukulele,5,Winter,25,Yamaha $ b
$ loop-> tags数组
:[{id:1,created_at:null,updated_at:null,name:Happy,pivot:{FK_loop_id :2,FK_tag_id :1}},{ ID :4,created_at :空 的updated_at :空, 姓名 : 夏, 枢轴:{ FK_loop_id:2, FK_tag_id:4}},{ ID:14, created_at:空 的updated_at:NULL, 名称: 快乐, 枢轴:{ FK_loop_id:2 FK_tag_id: 14}},{ ID:9,CR eated_at:null,updated_at:null,name:Acoustic,pivot:{FK_loop_id:2,FK_tag_id:9}}]
/ pre>
解决方案
< select name =tagsmultiple required>
@foreach($ tags as $ name)
@foreach($ item-> tags as $ itemtag)
@if($ name == $ itemtag-> name)
< option value ={{$ name}}selected> {{$ name}}< / option>
<?php继续2; ?>
@endif
@endforeach
< option value ={{$ name}}> {{$ name}}< / option>
@endforeach
I have an array of tags from my database. I also have attached tags from a current item. I want to check wether tags are already attached or not. This seems to work but of course I get duplicate items in my select-field when there is originally more than 1 tag attached to the item. How can I avoid this ?
<select name="tags" multiple required> @foreach ($tags as $name) @foreach($item->tags as $itemtag) @if($name == $itemtag->name) <option value="{{$name}}" selected>{{$name}}</option> @else <option value="{{$name}}">{{$name}}</option> @endif @endforeach @endforeach </select>
$tags array :
{"9":"Acoustic","3":"Angry","6":"Autumn","10":"Banjo","13":"Bass","14":"Cheerful","12":"Chill","35":"Dirty","8":"Electric","22":"Epiphone","24":"ESP","19":"Fender","33":"Funk","16":"Funny","18":"Gibson","30":"Gretsch","32":"Groovy","1":"Happy","20":"Ibanez","23":"Jackson","31":"Les Paul","28":"Martin","15":"Mellow","21":"Paul Reed Smith","27":"Redwood","2":"Sad","29":"Schecter","17":"Sleepy","34":"Spanish","7":"Spring","4":"Summer","26":"Taylor","11":"Ukulele","5":"Winter","25":"Yamaha"}
$loop->tags array :
[{"id":1,"created_at":null,"updated_at":null,"name":"Happy","pivot":{"FK_loop_id":2,"FK_tag_id":1}},{"id":4,"created_at":null,"updated_at":null,"name":"Summer","pivot":{"FK_loop_id":2,"FK_tag_id":4}},{"id":14,"created_at":null,"updated_at":null,"name":"Cheerful","pivot":{"FK_loop_id":2,"FK_tag_id":14}},{"id":9,"created_at":null,"updated_at":null,"name":"Acoustic","pivot":{"FK_loop_id":2,"FK_tag_id":9}}]
解决方案This should work :
<select name="tags" multiple required> @foreach ($tags as $name) @foreach($item->tags as $itemtag) @if($name == $itemtag->name) <option value="{{$name}}" selected>{{$name}}</option> <?php continue 2; ?> @endif @endforeach <option value="{{$name}}">{{$name}}</option> @endforeach
这篇关于如何检查两个数组之间的匹配与foreach在laravel刀片?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文