我正在更新将银行对账单的 XML 文件导入到发票软件中的软件。 其中一项操作是通过迭代在 xml 文件结构中查找值(此时文件本身已转换为关联数组)。
我想要实现的是在配置文件中设置某种映射以供软件的其余部分使用,这将显示在关联数组中查找特定数据的位置,例如交易日期、现金金额付费和其他。
所以第一个 cfg map 数组:
"map"=>array(
"date"=>"ARRAY['exec-date']",
"amount"=>"ARRAY['amount']['value']"
);
然后使用该映射(从 XML)使用这些键值中提供的结构(使用变量-变量)获取适当的值:
$amount = ${$map['amount']};
这可能吗?还是我太累了,这很容易,但我只是受阻了?
最佳答案
您可以使用匿名函数:
$map = array(
"date" => function($x) { return $x['exec-date']; },
"amount" => function($x) { return $x['amount']['value']; }
);
那么你会这样做:
$amount = $map['amount']($xml);
关于php - 带有数组的可变变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27737953/