为什么我的PHP函数没有产生任何输出?

Mik*_*ike 2 php arrays function echo multidimensional-array

下面的代码显示了一个多维数组,以及一个循环遍历数组以回显带有链接的嵌套菜单的函数.

但是,该功能似乎没有工作,因为没有任何回应.

它工作但我改变了一些包括,所以它可能与此有关吗?

<?php

$urls = array (
    0=>array (
        0=>"Home",
        1=>"http://uni.michaelnorris.co.uk/",
        2=>"Home",
        3=>"",
        4=>"",
        5=>"1"
    ),

    1=>array (
        0=>"Blog",
        1=>"http://uni.michaelnorris.co.uk/blog/",
        2=>"Blog",
        3=>"",
        4=>"",
        5=>"1"
    ),

    2=>array (
        0=>"Glossary",
        1=>"http://uni.michaelnorris.co.uk/",
        2=>"Glossary",
        3=>"",
        4=>"",
        5=>"1"
    ),

    3=>array (
        0=>"Resources",
        1=>"http://uni.michaelnorris.co.uk/blog/",
        2=>"Resources",
        3=>"",
        4=>"",
        5=>"1"
    ),

    4=>array (
        0=>"Staff",
        1=>"http://uni.michaelnorris.co.uk/",
        2=>"Staff",
        3=>"",
        4=>"",
        5=>"1"
    ),

    5=>array (
        0=>"Blog",
        1=>"http://uni.michaelnorris.co.uk/blog/",
        2=>"Blog",
        3=>"",
        4=>"",
        5=>"1"
    ),

    6=>array (
        0=>"Home",
        1=>"http://uni.michaelnorris.co.uk/",
        2=>"Home",
        3=>"",
        4=>"",
        5=>"1"
    ),

    7=>array (
        0=>"Blog",
        1=>"http://uni.michaelnorris.co.uk/blog/",
        2=>"Blog",
        3=>"",
        4=>"",
        5=>"1"
    )       
);

function showMenu()
{
    $top = count($urls);
    echo "<ul>";
    for ($i=0;$i<$top;$i++) {
        echo "<li><a href='".$urls[$i][1]."' title='".$urls[$i][2]."'>".$urls[$i][0]."</a><li>";
    }
    echo "</ul>";
}

?>

<?php showMenu(); ?>
Run Code Online (Sandbox Code Playgroud)

Cyc*_*one 7

退后一步,我注意到了你的问题.替换showMenu为:

function showMenu()
{
    global $urls;
    $top = count($urls);
    echo "<ul>";
    for ($i=0;$i<$top;$i++) {
        echo "<li><a href='".$urls[$i][1]."' title='".$urls[$i][2]."'>".$urls[$i][0]."</a></li>";
    }
    echo "</ul>";
}
Run Code Online (Sandbox Code Playgroud)

您已$urls在函数范围之外声明.将来,请告诉我们您的问题代码有什么问题,而不是让我们猜测.