Array: defina o valor usando a notação de pont

Olhando para a documentação de Kohana, encontrei esta função realmente útil que eles usam para obter valores de uma matriz multidimensional usando uma notação de ponto, por exemplo:

$foo = array('bar' => array('color' => 'green', 'size' => 'M'));
$value = path($foo, 'bar.color', NULL , '.');
// $value now is 'green'

Gostaria de saber se existe uma maneira de definir o valor de uma matriz da mesma maneira:

set_value($foo, 'bar.color', 'black');

A única maneira de encontrar isso é reconstruir a notação de matriz ($ array ['bar'] ['color']) e depois definir o valor .. usandoeval.

Alguma idéia para evitar eval?

questionAnswers(7)

yourAnswerToTheQuestion