php - 带有数组的可变变量

标签 php arrays xml-parsing mapping variable-variables

我正在更新将银行对账单的 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/

相关文章:

Java:将 StreamResult 转换为 DOM

php - date_default_timezone_set 显示不正确的时间

php - 将 Excel 导入 mySQL 花费的时间太长

c - 在 n 个元素的数组中,首先对 n-(root)n 个元素进行排序,我们必须对数组进行排序

python - 如何使用 Python 解析复杂的 XML

java - 简单的 XML 框架 - 奇怪的错误

php - addslashes() 是否足够安全以避免 SQL 注入(inject)?

php - 如何使用 PHP Bitly v4 缩短 URL?

javascript - 如何创建jquery全局变量

javascript - AngularJS - 使用 $http 更新数组内的嵌套对象属性