1. 程式人生 > >php 寫入csv時 雙引號,逗號及特殊字符

php 寫入csv時 雙引號,逗號及特殊字符

text posit ade function hid ring filename opened 圖片

1.雙引號

技術分享圖片
<?php
function new_csv($string)
{
    $filename = date(‘Ymd‘).‘.csv‘; //設置文件名
    header("Content-type:text/csv");
    header("Content-Disposition:attachment;filename=".$filename);
    header(‘Cache-Control:must-revalidate,post-check=0,pre-check=0‘);
    header(‘Expires:0‘);
    header
(‘Pragma:public‘); echo $string; } $str = ‘a,b,c,d,"e"‘."\n".‘a,b,c,d,e‘."\n"; new_csv($str);
View Code

下載內容為

技術分享圖片

我們發現csv自動忽略了雙引號 。那麽我想要展示怎麽辦呢?

技術分享圖片
<?php
function new_csv($string)
{
    $filename = date(‘Ymd‘).‘.csv‘; //設置文件名
    header("Content-type:text/csv");
    header("Content-Disposition:attachment;filename=".$filename
); header(‘Cache-Control:must-revalidate,post-check=0,pre-check=0‘); header(‘Expires:0‘); header(‘Pragma:public‘); echo $string; } $str = ‘a,b,c,d,"""e"""‘."\n".‘a,b,c,d,e‘."\n"; new_csv($str);
View Code

在將每個" 替換為3個就行

2.逗號及其他字符

如果遇到逗號會自動分割,此時我們只需要將該數據直接用雙引號包起來就行了 ,因為csv是會忽略雙印號的

註:雖然csv自動忽略雙引號,但是如果你用notepad打開該csv文件,還是會看到

php 寫入csv時 雙引號,逗號及特殊字符