我对“多渠道路径”请求有疑问。

JSON响应与带有ga:维度和指标的经典请求不同。
它按行返回原始值,但我无法获取它们。

范例:
这是一个经典请求,指标为ga:transactionRevenue,维度为ga:transactionId。
我在行中得到这个:

"rows": [
  [
   "10292",
   "-231.5"
  ],
  [
   "11330",
   "0.0"
  ],
  [
   "12180",
   "37.5"
  ],
(...)


易于检索。

现在使用指标mcf:firstInteractionValue和维度mcf:sourceMedium。

 "rows": [
  [
   {
    "primitiveValue": "(direct) / (none)"
   },
   {
    "primitiveValue": "2066.2514"
   }
  ],
  [
   {
    "primitiveValue": "YH-TW / cpc"
   },
   {
    "primitiveValue": "0.0"
   }
   ],
   [
   {
    "primitiveValue": "ameblo.jp / referral"
   },
   {
    "primitiveValue": "0.0"
   }
  ],
(...)


我尝试了getRows()方法,但它返回了一个奇怪的数组。
我还在MCFDataRows上尝试过getPrimitiveValue(),但它返回一个空值。

$dataRows = $dataMCF->getRows();
for($i=0; $i<sizeof($dataRows); $i++){
     echo $dataRows[$i]->getPrimitiveValue();
}


结果:无

您能帮我获得这些价值吗? :3

编辑:

对象$ dataRows [0]

Google_Service_Analytics_McfDataRows Object
(
    [conversionPathValueType:protected] => Google_Service_Analytics_McfDataRowsConversionPathValue
    [conversionPathValueDataType:protected] => array
    [primitiveValue] =>
    [collection_key:protected] => items
    [modelData:protected] => Array
    (
        [0] => Array
        (
            [primitiveValue] => (direct) / (none)
        )

        [1] => Array
        (
            [primitiveValue] => 2066.2514
        )

    )

    [processed:protected] => Array
    (
    )

)


我觉得这很简单,但是自从今天早上以来我一直无法获得这些价值。
我看不到如何获取modelData:protected数组。我读了API的整个MCF类3次,但找不到正确的函数。

最佳答案

尝试使用此:

$dataRows = $dataMCF->getRows();
foreach($dataRows AS $row){
                $temp_row = array(  );
                foreach ((array)$row->toSimpleObject() as $key => $value) {
                    $temp_row[ $key ] = $value['primitiveValue'];
                }
            }

09-18 04:20