2009-09-17 49 views
1

如何获取像下面这样的多维数组,并将其拆分为多个单独的数组?额外的挑战:虽然我知道在下面的例子中有两对(综合浏览量,访问量),但你怎么能这样做,假设你不知道数组中的对数量?例如,我可能想要添加“页面上的时间”或“访问的页面”,因此可以有任意数量的对。如何在PHP中分割多维数组?

最终,我的目标是拥有一个数组:“26,9,18”和另一个数组“20,4,9”。

我有一个这样的数组:

 
Array 
(
    [20090817] => Array 
     (
      [ga:pageviews] => 26 
      [ga:visits] => 20 
     ) 

    [20090818] => Array 
     (
      [ga:pageviews] => 9 
      [ga:visits] => 4 
     ) 

    [20090819] => Array 
     (
      [ga:pageviews] => 18 
      [ga:visits] => 9 
     ) 
) 

我还以为下面的代码将工作,但它没有得到我想要的特定值,和一些奇怪的原因,每个值修剪到一个字符:

 
$pageViews = array(); 
$visits[] = array(); 
foreach ($google_lastMonth as $value) { 
    foreach ($value as $nested_key => $nested_value) { 
     $pageViews[] = $nested_value["ga:pageviews"]; 
     $visits[] = $nested_value["ga:visits"]; 
    } 
} 
+0

代码应该工作.... – RageZ 2009-09-17 03:41:25

+0

是啊,明明没有错你的方式这样做... – timdev 2009-09-17 03:44:08

回答

9

你的阵列是不深,你想:

$pageViews = array(); 
$visits = array(); 
foreach ($google_lastMonth as $value) { 
    $pageViews[] = $value["ga:pageviews"]; 
    $visits[] = $value["ga:visits"]; 
} 
+1

谢谢!!!!!!!!!!!!亲爱的阁下,我讨厌这些“陷阱”。感谢上帝,感谢上帝,祝你亲切的人谁使事情工作; D – Matrym 2009-09-17 03:51:06

0

我觉得

你应该擦除访问的托槽

好我的坏应该是

$pageViews = array(); 
    $visits = array(); 
    foreach ($result as $value) { 
    $pageViews[] = $value['ga:pageviews']; 
     $visits[] = $value['ga:visits']; 
} 
+0

感谢您的支持。我仍然有问题。任何其他想法? – Matrym 2009-09-17 03:46:03

+0

尝试更换“通过 '上 $浏览量[] = $ nested_value [' GA:浏览量 ']; $ 访问[] = $ nested_value [' GA:探访]; – RageZ 2009-09-17 03:48:32

+0

OKY发现它... – RageZ 2009-09-17 03:52:40