Barryvdh\Elfinder\Connector::output PHP Method

output() protected method

Output json
Author: Dmitry (dio) Levashov
protected output ( array $data ) : void
$data array
return void
    protected function output(array $data)
    {
        $header = isset($data['header']) ? $data['header'] : $this->header;
        unset($data['header']);
        $headers = array();
        if ($header) {
            foreach ((array) $header as $headerString) {
                if (strpos($headerString, ':') !== false) {
                    list($key, $value) = explode(':', $headerString, 2);
                    $headers[$key] = $value;
                }
            }
        }
        if (isset($data['pointer'])) {
            $this->response = new StreamedResponse(function () use($data) {
                if (stream_get_meta_data($data['pointer'])['seekable']) {
                    rewind($data['pointer']);
                }
                fpassthru($data['pointer']);
                if (!empty($data['volume'])) {
                    $data['volume']->close($data['pointer'], $data['info']['hash']);
                }
            }, 200, $headers);
        } else {
            if (!empty($data['raw']) && !empty($data['error'])) {
                $this->response = new JsonResponse($data['error'], 500);
            } else {
                $this->response = new JsonResponse($data, 200, $headers);
            }
        }
    }