Foreach只循环一次

时间:2012-07-30 09:51:41

标签: php arrays foreach


我有PHP代码的问题:我一直在使用PHP来生成静态HTML文件(通过fopen / fwrite),具体取决于一些SQL请求(以及其他),并且我遇到了foreach循环的问题:

$maincats = array('/boutique' => 'TOUS LES OBJETS',
                    '/boutique/nouveautes' => 'NOUVEATES',
                    '/boutique/luminaires' => 'LUMINAIRES',
                    '/boutique/assises' => 'ASSISES',
                    '/boutique/rangements' => 'RANGEMENT',
                    '/boutique/objets-deco' => 'OBJETS DECO',
                    '/boutique/tables' => 'TABLES',
                    '/boutique/art-de-la-table' => 'ARTS DE LA TABLE',
                    '/boutique/high-tech' => 'HIGH-TECH',
                    '/boutique/enfants' => 'ENFANT');

    $page .= '
<div id="menuWrap">
<div id="menu">
    <ul>';
    $i = 0;
    foreach ($maincats as $url => $name);
    {
        $i++;
        $page .= '
        <li><a ';
        $page .= 'href="'.$url.'">'.$name.'</a></li>';
    }

我在foreach之前尝试过print_r,我可以看到数组的所有元素(它工作得很好)。但每次执行此操作时,$ page只包含一个<li>,即数组的最后一项,$i = 1。我想不出我做错了什么。

任何人都知道它来自哪里?

2 个答案:

答案 0 :(得分:4)

中删除;
foreach ($maincats as $url => $name);

答案 1 :(得分:2)

删除;

代码错误

 foreach ($maincats as $url => $name);
    {

更正代码

 foreach ($maincats as $url => $name)
    {