2011-06-12 88 views
1

说我创建一个递归阵列与此代码:如何从递归数组内的数组中获取数据?

$digits = 0; 
$tens = 0; 
$hundreds = 0; 

for($i = 0; $i <= 100; $i++) 
{ 
    $myArray[$hundreds][$tens][$digits] = $i; 

    $digits++; 
    if($digits > 9) 
    { 
     $digits = 0; 
     $tens++; 
    } 

    if($tens > 9) 
    { 
     $tens = 0; 
     $hundreds++; 
    } 
} 

我怎么可能回声出fromt的'tens array' == 2所有的数据?

要清楚,我会寻找这些结果:

20 21 22 23 24 25 26 27 28 29 

因为使用基地10 IM,我可能只是这样做:

for($i=0; $i < 10; $i++) 
{ 
    echo $myArray[0][2][$i] 
} 

但如果我不知道数字数组中有多少个元素?

回答

2
foreach($myArray[0][2] as $v) { 
echo $v."<br>\n"; 
} 
+0

好的谢谢!我知道这一定很简单。 – SlickRick 2011-06-12 10:51:57

+1

用PHP一切都很简单(几乎) – dynamic 2011-06-12 10:59:50

0
<?php 
$tensArr = $myArray[0][2]; 
for($i= 0 ; $i < count($tensArr); $i++) 
{ 
    echo $tensArr[$i]."\n" ; 

} 
+0

为了防止在每个循环中运行count(),可以设置一个初始变量:'for($ i = 0,$ count = count($ tensArr); $ i <$ count; $ i ++)' – hakre 2011-06-12 11:07:24

+0

@hakre,它有什么不同?它似乎甚至没有微观优化或纠正代码?请分享您的观点。 – DhruvPathak 2011-06-12 11:09:29

+0

@hakre,这并没有什么帮助。计数函数是0(1),在这里看到更多... http://stackoverflow.com/questions/4566314/php-what-is-the-complexity-ie-o1-on-of-the-function-count – DhruvPathak 2011-06-12 11:20:33