Foreach循环仅一次


Foreach looping only once


我对PHP代码有问题:我一直在使用PHP根据一些SQL请求(以及其他请求)生成静态HTML文件(通过fopen/fwrite),并且我对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。我想不出我做错了什么

有人知道这是从哪里来的吗?

删除来自

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

删除;

错误代码

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

正确的代码

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