Hypernode\Magento\Command\Hypernode\Performance\PerformanceCommand::generateTablesData PHP Method

generateTablesData() protected method

Generates data to output in a table.
protected generateTablesData ( $results ) : array | boolean
$results
return array | boolean
    protected function generateTablesData($results)
    {
        $tables = array();
        // all tables
        foreach ($results as $set) {
            // foreach sitemap we parsed
            // setting placeholder var and headers
            $tableArray = array('headers' => false, 'requests' => array());
            // every table row
            // setting headers
            if (count($set[0]) > 1) {
                $tableArray['headers'] = array("URL", "Status X", "TTFB X", "Status Y", "TTFB Y", "Difference");
            } elseif (count($set[0]) == 1) {
                $tableArray['headers'] = array("URL", "Status", "TTFB");
            }
            foreach ($set as $batch) {
                $requestArray = array();
                if (count($batch) > 1) {
                    $parsedUrl = parse_url($batch[0]['url']);
                    $requestArray[] = $parsedUrl['path'];
                    foreach ($batch as $request) {
                        $requestArray[] = $this->parseResponseCode($request['status']);
                        $requestArray[] = $request['ttfb'];
                    }
                    $requestArray[] = $this->ttfbCompare($batch[0]['ttfb'], $batch[1]['ttfb']);
                } elseif (count($batch) == 1) {
                    $requestArray[] = $batch[0]['url'];
                    $requestArray[] = $this->parseResponseCode($batch[0]['status']);
                    $requestArray[] = $batch[0]['ttfb'];
                } else {
                    return false;
                    // output data as json or something
                }
                array_push($tableArray['requests'], $requestArray);
            }
            array_push($tables, $tableArray);
        }
        return $tables;
    }