迭代<li>中的数组元素

时间:2015-05-14 08:47:39

标签: php arrays laravel-4

我有一个名为

的国家/地区数组
$countries_list = array('United Kingdom, Spain, Norway, etc').

我想建立一个与此相同的列表:

<ul>
   <li>
      <a href="Norway">Norway</a>
   </li>
   <li>
      <a href="Spain">Spain</a>
   </li>

   ETC...
</ul>

我正在尝试此版本,但无法正常工作:

<ul>
    @foreach($countries_list as $country)       
        <li><a href="$country">{{$country}}</a></li>                
    @endforeach
</ul>

这个报告给我:

<li><a href="Spanish Nordway United Kingdom">Spanish Nordway United Kingdom</a></li>

这是Laravel语法:

{{}} = echo.

3 个答案:

答案 0 :(得分:1)

您拥有的不是国家/地区数组,而是包含一个包含所有国家/地区的字符串的数组。更改它,使其包含单个字符串:

$countries_list = array('United Kingdom', 'Spain', 'Nordwary', 'etc');

如果以逗号分隔字符串动态获取输入,请使用explode()

$countries_list = explode(', ', 'United Kingdom, Spain, Nordwary, etc');

答案 1 :(得分:0)

你想念{{}}。

  <ul>
        @foreach($countries_list as $country)

                <li><a href="{{$country}}">{{$country}}</a></li>

        @endforeach
        </ul>

答案 2 :(得分:0)

问题是所有国家都在一个字符串中出现了逗号分隔,所以最初要改变它们:

$countries_list = array('United Kingdom', 'Spain', 'Nordwary', 'etc');

然后使用:

<ul>
  @foreach($countries_list as $country)

    <li><a href="{{$country}}">{{$country}}</a></li>

  @endforeach
</ul>

注意: - 最初尝试更正您的国家/地区数组格式,否则无法使用任何解决方案。如果您无法更改数组格式为了再次解决这个问题,需要再次展开$countries_list并使用foreach进行迭代。爆炸这样做: -

$countries_list = explode(', ', 'United Kingdom, Spain, Nordwary, etc');