PHP Comment ajouter récursivement l'élément suivant du tableau au parent

Oct 08 2020

L'idée principale est que je souhaite convertir ce tableau:

$arr1 = ['user', 'address', 'street'];

À celui-ci:

$arr2['user']['address']['street'];

J'ai essayé des fonctions récursives, foreach, pour ... mais je ne savais pas comment le faire.

Exemple:

function appendingArrays($arrayOfKeys, $value) {
    // TODO
}
$finalArray = appendingArrays(['user', 'address', 'street'], 'Lombard Street'); echo $finalArray['user']['address']['street']; // Lombard Street

Une idée?

Réponses

2 AkshayHegde Oct 08 2020 at 18:47

J'espère que cela vous aidera: passez par la démo

[akshay@db1 tmp]$ cat test.php <?php $arr1 = ['user', 'address', 'street'];

$c = count($arr1) - 1;
$out = array(); for($i = $c; $i >= 0; $i--) { $out = array($arr1[$i] => $out); } /* input */ print_r($arr1);

/* output */
print_r($out);

Production:

[akshay@db1 tmp]$ php test.php 
Array
(
    [0] => user
    [1] => address
    [2] => street
)
Array
(
    [user] => Array
        (
            [address] => Array
                (
                    [street] => Array
                        (
                        )

                )

        )

)