从数组制作树


Making tree from array

我有数组:

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

如何从这个数组制作树?我希望收到:

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

最简单的方法:

<?
$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);
?>

工作代码

我根据您的

需要回答。但这不是一棵树。

$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);

试试这个:

$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);