【发布时间】:2015-06-13 20:14:20
【问题描述】:
我正在读取GEDCOM 格式的家谱平面文件,并从数据中生成一个数组以暂存到表中。如果遇到值CONC <some value>,那么我需要将<some value> 附加到刚刚插入的最后一个元素的值上(无论维度深度如何),而不是添加元素。
我尝试使用current(...) 等,但这是否适用于多维关联数组?
请考虑数组中的以下元素:
[@N163@] => Array ( [INDI] => Array ( [TEXT] => Some data of this person) )
如果下一行显示“1 CONC,包括他的职业”
而不是像这样添加一行
[@N163@] => Array (
[INDI] => Array ( [TEXT] => Some data of this person)
[INDI] => Array ( [CONC] => including his profession) )
我希望数组如下所示:
[@N163@] => Array (
[INDI] => Array ( [TEXT] => Some data of this person including his profession) )
到目前为止我的研究:
end($theArray)
设置指向最后插入元素的指针,后跟$theArray[key($theArray)] = .... 以更新此元素。
但是我没有让这种方法适用于多维数组和/或它变得非常混乱。
还有:
使用例如合并两个数组+= 符号,
但这似乎只会覆盖一个新元素,如果键相同,则不会影响最后一个元素
还有:
foreach 调用的示例,这对我的情况没有帮助。
希望有人能解释一下……非常感谢!
【问题讨论】:
标签: php multidimensional-array associative-array