【问题标题】:how to get data from an array inside a recursive array?如何从递归数组中的数组中获取数据?
【发布时间】:2011-06-12 10:26:24
【问题描述】:

假设我用这段代码创建了一个递归数组:

$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++;
    }
}

我怎样才能回显来自'tens array' == 2 的所有数据?

明确地说,我正在寻找这些结果:

20 21 22 23 24 25 26 27 28 29

因为我使用的是 10,所以我可以这样做:

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

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

【问题讨论】:

    标签: php


    【解决方案1】:
    foreach($myArray[0][2] as $v) {
     echo $v."<br>\n";
    }
    

    【讨论】:

    • 用php一切都很简单(几乎)
    【解决方案2】:
    <?php
    $tensArr =  $myArray[0][2];
    for($i= 0 ; $i < count($tensArr); $i++)
    {
        echo  $tensArr[$i]."\n" ;
    
    }
    

    【讨论】:

    • 为了防止在每个循环中运行 count(),可以设置一个初始变量:for($i=0, $count=count($tensArr); $i &lt; $count; $i++)
    • @hakre,有什么不同?它似乎甚至没有对代码进行微优化或更正?请分享您的观点。
    • @hakre ,这并没有多大帮助。计数函数是 0(1) ,在这里查看更多...stackoverflow.com/questions/4566314/…
    • MO。当您分配$tensArr 时,我认为它会使图片更加完整。
    • @hakre.. 是的,它确实有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-08-17
    • 2014-08-21
    • 1970-01-01
    • 2016-12-16
    • 2022-10-05
    • 2016-07-01
    • 2022-06-14
    相关资源
    最近更新 更多