$raw_data = array ('data' => array ('id' => 'foo'));
$fields = array ('id_source' => "data['id']");
foreach ($raw_data as $data) {
foreach ($fields as $key => $path) {
var_dump ($data['id']);
var_dump ($$path);
}
}
第一个var_dump给出了foo
的正确值。但是,第二个给了我Undefined variable: data['id']
。任何人都可以告诉我为什么会这样,特别是因为第一个var_dump工作确认变量$data['id']
已经设置。
我意识到这个示例是基本的,我可以做$data[$key]
并更改$fields = array ('id_source' => 'id');
,但我希望能够在需要时深入了解多维数组。这就是为什么我要尝试做我原来的方法。