首先,我很抱歉我的英语,这不是最好的。
现在我有了这个foreach循环:
@foreach(array_combine($land_keys, $land_values) as $key => $value)
@foreach($all_lands_flag as $flag)
@if(strtolower($key) == $flag)
<tr>
<td><img src="/flags/{{$flag}}.png"/></td>
<td width="86%">{{$key}}</td>
<td>{{$value}}</td>
</tr>
@endif
@endforeach
@endforeach
在像@if,@ foreach之类的php命令之前的@是因为我正在使用laravel框架。
就像你可以看到我的foreach中有一些数组而且它们都很完美,没有任何问题。这部分更多:
@foreach($all_lands_flag as $flag)
@if(strtolower($key) == $flag)
<tr>
<td><img src="/flags/{{$flag}}.png"/></td>
<td width="86%">{{$key}}</td>
<td>{{$value}}</td>
</tr>
@endif
@endforeach
$ flag中的只是'de','usa','it'这样的名字...... 在$ key中它是相同的,我只是比较它们,如果PHP找到$ key和$ flag中的标志,它应该给我它们:
<img src="/flags/{{$flag}}.png"/>
好吧,但它不起作用。如果我删除{{$ flag}}。png并将其替换为usa.png,它会为我提供所有数组元素的USA标志。问题是,我需要它像我在我的代码中所做的那样,对于每一块土地,它都拥有旗帜。
我希望有人能帮助我!谢谢
输出应该是这样的:
Flag: Land: Quantity:
'germany flag' DE 155
'italian flag' IT 100
'usa flag' USA 55
输出:
$all_lands_flag = array('cn', 'fr', 'us', 'at', 'il', 'ua', 'de', 'us', 'eu', 'ru', 'br', 'gb', 'nl', 'lu', 'it', 'other');
$ land_keys输出:
Array
(
[0] => "US"
[1] => "DE"
[2] => "BR"
[3] => "FR"
[4] => "other"
)
$ land_values
Array
(
[0] => 186
[1] => 44
[2] => 15
[3] => 3
[4] => 7
)