2013-01-25 1 views
0

Я хочу, как я могу добавить новую новую строку в начало файла csv, потому что в моем файле csv-файла он заполняется данными из базы данных, и я хочу, чтобы я хотел добавить соответствующие имена столбцов для каждого типа данные.PHP: Как добавить новую строку вверху файла csv с помощью fputcsv?

Вот мой код, как сейчас:

<?php 
include 'database.php'; 
$db = new database(); 

$data = $db->exportdatabase(); 

$file = fopen('php://output', 'w'); 
foreach ($data as $items) 
{ 
    fputcsv($file, $items, ','); 
} 

header('Content-Description: File Transfer'); 
header("Content-Type: application/csv") ; 
header("Content-Disposition: attachment; filename=data.csv"); 
header("Expires: 0"); 
fclose($file); 
exit; 
?> 

Вот мои данные в формате CSV выглядит

Image

+2

В чем проблема? Напишите строку имен столбцов до цикла foreach. – Barmar

+0

это моя проблема, я не знаю как? :( – MekeniKine

ответ

2

Вы можете попробовать перед Еогеасп набор имен столбцов

Или с помощью fseek функция

fseek($file, 0); 
fputcsv($file, $titles, ','); 

fseek Ищет по файлу указатель

+1

Можете ли вы искать в 'php: // output'? Он не указывает на файл. Но зачем вам искать? Просто сделайте это, прежде чем записывать данные. – Barmar

+0

где я должен поставить свой заголовок? У меня есть имя столбца «ИД», «БРЕНД», «ЦЕНА» и т. д., где я должен положить это в замешательство. спасибо! – MekeniKine

+0

@MekeniKine $ columns = array ('id', 'brand', 'price ', ...); перед циклом foreach этот массив выводится следующим образом: 'fputcsv ($ file, $ columns,', ');' – Kai