<?php
$array1 = array('column1 value1', 'column1 value2', 'column1 value3');
$array2 = array('column2 value1', 'column2 value2', 'column2 value3');
$array3 = array('column3 value1', 'column3 value2', 'column3 value3');
$headers = array('First Value', 'Second Value', 'Third Value');
$result = array_map(null, $array1, $array2, $array3);
$fp = fopen('file.csv', 'w');
fputcsv($fp, $headers);
foreach ($result as $fields) {
fputcsv($fp, $fields);
}
fclose($fp);
Хорошее решение, которое будет работать для вас, - отобразить все ваши значения, прежде чем вставлять их, используя array_map
и вставлять заголовки отдельно.
Вывод вышеприведенного кода:
"First Value","Second Value","Third Value"
"column1 value1","column2 value1","column3 value1"
"column1 value2","column2 value2","column3 value2"
"column1 value3","column2 value3","column3 value3"
Content-Type
заголовок только относится к ответам, которые содержат тело. 304 ответа не содержат тело, так, чтобы заголовок не применялся. Точно так же Вы не хотите отправлять Last-Modified
или ETag
потому что 304 ответа означают, что документ не изменился (и таким образом, ни у одного нет значений тех двух заголовков).
Для примера посмотрите это сообщение в блоге Anne van Kesteren, исследующей WordPress http_modified
функция. Обратите внимание, что это возвращается также Last-Modified
и ETag
или 304 ответа.