0

我有数组:

$array = array(
         0 => 'aaa',
         1 => 'bbb',
         2 => 'ccc',
         3 => 'ddd'
        );

我怎样才能从这个数组中制作树?我想收到:

$array = array(
         0 => 'aaabbbcccddd',
         1 => 'aaabbbccc',
         2 => 'aaabbb',
         3 => 'aaa'
        );
4

3 回答 3

0

最简单的方法:

<?
$array = array(
             0 => 'aaa',
             1 => 'bbb',
             2 => 'ccc',
             3 => 'ddd'
            );

    for($i = count($array); $i>0; $i--){
        $newArry[] = implode($array);
        unset($array[$i-1]);
    }

    print_r($newArry);
?>

工作代码

于 2013-10-03T11:44:06.723 回答
0

我根据你的需要回答了。但这不是一棵树。

$array = array(
             0 => 'aaa',
             1 => 'bbb',
             2 => 'ccc',
             3 => 'ddd'
            );

    $newArry=array();
    for($i=0; $i < count($array); $i++)
    {
        $str=$array[$i];
        for($j=$i+1; $j<=count($array); $j++)
        {
                $str.=$array[$j];
        }   
        $newArry[]=$str;    

    }   

    print_r($newArry);
于 2013-10-03T11:28:17.657 回答
0

尝试这个:

$array = array(
               'aaa',
               'bbb',
               'ccc',
               'ddd'
              );

$s = implode('', $array);

$a = array();

for ($i = 0; $i < count($array); $i++) {
   $a[] = substr($s, 0, count($array) * 3 - $i * 3);
}

var_dump($a);
于 2013-10-03T11:33:37.797 回答