Piwik\Archive\DataTableFactory::createDataTableMapFromIndex PHP Метод

createDataTableMapFromIndex() приватный Метод

Creates a Set from an array index.
private createDataTableMapFromIndex ( array $index, array $resultIndices, array $keyMetadata ) : Piwik\DataTable\Map
$index array @see DataCollection
$resultIndices array @see make
$keyMetadata array The metadata to add to the table when it's created.
Результат Piwik\DataTable\Map
    private function createDataTableMapFromIndex($index, $resultIndices, $keyMetadata)
    {
        $result = new DataTable\Map();
        $result->setKeyName(reset($resultIndices));
        $resultIndex = key($resultIndices);
        array_shift($resultIndices);
        $hasIndices = !empty($resultIndices);
        foreach ($index as $label => $value) {
            $keyMetadata[$resultIndex] = $this->createTableIndexMetadata($resultIndex, $label);
            if ($hasIndices) {
                $newTable = $this->createDataTableMapFromIndex($value, $resultIndices, $keyMetadata);
            } else {
                $newTable = $this->createDataTable($value, $keyMetadata);
            }
            $result->addTable($newTable, $this->prettifyIndexLabel($resultIndex, $label));
        }
        return $result;
    }