Api\V1\Engine\Api::outputJSON PHP Method

outputJSON() private static method

Output as JSON
private static outputJSON ( integer $statusCode, array $data = null )
$statusCode integer The status code.
$data array The data to return.
    private static function outputJSON($statusCode, array $data = null)
    {
        // redefine
        $statusCode = (int) $statusCode;
        // init vars
        $charset = BackendModel::getContainer()->getParameter('kernel.charset');
        $pathChunks = explode(DIRECTORY_SEPARATOR, trim(__DIR__, DIRECTORY_SEPARATOR));
        $version = $pathChunks[count($pathChunks) - 2];
        $version = mb_strtolower($version);
        // build array
        $JSON = array();
        $JSON['meta']['status_code'] = $statusCode;
        $JSON['meta']['status'] = $statusCode === 200 ? 'ok' : 'error';
        $JSON['meta']['version'] = FORK_VERSION;
        $JSON['meta']['endpoint'] = SITE_URL . '/api/' . $version;
        // add data
        if ($data !== null) {
            $JSON['data'] = $data;
        }
        // set correct headers
        header('HTTP/1.1 ' . self::getHeaderMessage($statusCode));
        header('content-type: application/json;charset=' . $charset);
        // output JSON
        self::$content = json_encode($JSON);
    }