@Wrxxxh

Как решить задачу с массивом?

// Имеется
$keys = ['my', 'name', 'is', 'Rafael'];

$value = 'value';

// Нужно
$result = [
    'my' => [
        'name' => [
            'is' => [
                'Rafael' => 'value',
            ]
        ]
    ]
];
  • Вопрос задан
  • 156 просмотров
Решения вопроса 1
DevMan
@DevMan
$result = array_reduce( array_reverse( $keys ), function ( $c, $i ) use ( $value ) {
    return [ $i => ( is_null( $c ) ? $value : $c ) ];
} );
print_r( $result );
// или по-модному, если слоник не древний
$result = array_reduce( array_reverse( $keys ), fn( $c, $i ) => [ $i => $c ?? $value ] );
print_r( $result );
https://3v4l.org/tLFqe
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы