Php 环通多维阵列
我有以下数据结构:Php 环通多维阵列,php,Php,我有以下数据结构: results{ name{ timestamp( x, y, z) timestamp( x, y, z) timestamp( x, y, z) } name{ timestamp( x, y, z) timestamp( x, y, z) } }
results{
name{
timestamp( x, y, z)
timestamp( x, y, z)
timestamp( x, y, z)
}
name{
timestamp( x, y, z)
timestamp( x, y, z)
}
}
(名称数量可变,每个名称的时间戳数量可变)
我得到了name和tstamp的数组ref;我如何尊重这一点,从而获得预期的价值
Array,Array,6531,3035,2091
Array,Array,5219,2698,3354
更新:
假设我已经存储了以下数据:
结果{
鲍勃{
2014-01-01{ 1, 2, 3}
2014-01-02{ 4, 5, 6}
}
史蒂夫{
2014-01-01{ 1, 2, 3}
2014-01-02{ 4, 5, 6}
}
}
例如,如何打印字符串“Bob”或“2014-01-01”。我没有问题得到值1,2,3,等等
很抱歉,我接触PHP已经5年多了,但我以前接触过更深入的数组。去掉“真实”名称:
foreach ($results as $name => $timestamps) {
foreach (timestamps as $tstamp) {
printf("%s,%s,%s,%s,%s\n", $name, $tstamp, $tstamp[0], $tstamp[1], $tstamp[2]);
}
}
$name是您使用的声明中的一个数组,其结构排序为
timestamp(x,y,z)
。你能摆弄一下吗?$name
和$tstamp
是数组,不能打印。如果时间戳的数量是可变的,那么使用另一个foreach
循环时间戳并显示它们?差不多。
foreach ($results as $name => $timestamps) {
foreach (timestamps as $tstamp) {
printf("%s,%s,%s,%s,%s\n", $name, $tstamp, $tstamp[0], $tstamp[1], $tstamp[2]);
}
}