如何在PHP中访问循环范围外的变量值?

时间:2011-12-07 07:42:30

标签: php multidimensional-array for-loop scope

我遇到过这种情况:

我有一个打印出路径级别的多维数组。我想打印之前的路径

$maxlength = 4; // four levels

for($i = 0; $i<count($maxlength); $i++)
{
    $currentpath = $_GET['currentpath'];----->        /abc/def/g
    $path_level = explode('/',$currentpath);

    for($j = 0; $j<count($arr[$i]); $j++)
    {
         $temp = getcontentpath($arr[$i][$j]);
    }

    echo"<a href = '?path=$temp&action=abcd'>". $path_level[$i] ."</a>";
}

如何访问for循环范围之外的temp值?

提前致谢..

1 个答案:

答案 0 :(得分:-1)

我一开始搞砸了这个答案,让我们试着澄清一下。正如下面的评论中所提到的,并且如PHP documentation中所提到的,PHP变量通常只有一个范围,因此在for循环之外,此问题中的变量$temp也应该可访问,即使它是在循环内声明的。因此问题不在于变量范围。

当Prashant发现他自己时,问题是该函数返回一个空值,因此空$temp