2011-09-25 20 views
5

Wysyłam plik csv jako nagłówek i chcę użyć przecinka (nie seperate, po prostu użyć). jak mógłbym to zrobić? Używam PHP i nie mogę używać fputcsv, ponieważ wysyłam go jako nagłówek.Napisz przecinek w pliku CSV z PHP

Odpowiedz

10

Wystarczy użyć '"'.$value.'"' wokół niego i będzie dobrze.

+1

Podczas dodawania cytatów dookoła pola należy pamiętać również o tym, aby unikać cytatów - w polu! Usr str_replace do tego. – ontrack

9

Albo napisać CSV do pliku, a następnie wysłać go za pośrednictwem readfile lub zapisać go do strumienia wyjściowego bezpośrednio:

fputcsv(
    fopen('php://output', 'w+'), 
    array(
     'Some text', 
     'Some text with commas ,,,,,', 
     'Other text' 
    ) 
); 

które następnie wydrukować

"Some text","Some text with commas ,,,,,","Other text" 

Zauważ, że fputcsv pozwoli także do zmiany ograniczników i obudów, więc oprócz zawijania wartości w cudzysłowach można również zmienić ogranicznik, na przykład średnik.

Patrz Podręcznik PHP na obsługiwanych owijarki w fopen:

+2

+1 za przyjemne korzystanie z obwolut strumieniowych – NikiC