Метод Restler возвращает заголовок Content-Disposition

Можно ли в одном из моих методов get указать конкретный Content-Type и Content-Disposition? После получения моих данных я делаю это:

return Scope::get('CsvFormat')->encode($data);

и поэтому возвращенные данные в формате CSV. Теперь я хочу установить тип содержимого на text / csv и установить Content-Disposition так, чтобы он фактически позволял загружать файл, а не просто отображал содержимое.

1

Решение

Вот рабочий пример!

В Excel.php

<?php

class Excel
{
/**
* Download CSV data which can be rendered with Excel
*
* @return array
* @format CsvFormat
* @header Content-Disposition: attachment; filename="excel.csv"*/
public function download()
{
//csv compatible array
$data = [['name' => 'John Doe', 'age' => '23'], ['name' => 'Mika', 'age' => '45']];

return $data;
}
}

Ваш index.php

<?php

require '../vendor/autoload.php';

use Luracast\Restler\Restler;

$r = new Restler();
$r->addAPIClass('Excel');

$r->setOverridingFormats('CsvFormat');
$r->handle();

Пытаться http://localhost/excel/download

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]