zoukankan      html  css  js  c++  java
  • php 写入csv时 双引号,逗号及特殊字符

    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"'."
    ".'a,b,c,d,e'."
    ";
    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"""'."
    ".'a,b,c,d,e'."
    ";
    new_csv($str);
    View Code

    在将每个" 替换为3个就行 

    2.逗号及其他字符 

    如果遇到逗号会自动分割,此时我们只需要将该数据直接用双引号包起来就行了 ,因为csv是会忽略双印号的 

    注:虽然csv自动忽略双引号,但是如果你用notepad打开该csv文件,还是会看到 

  • 相关阅读:
    ioi1998 Polygon
    [Noip模拟题]Seq
    [noip模拟]分组行动
    入门OJ:photo
    Sgu167 I-country
    入门OJ:简单的网络游戏
    入门OJ:Coin
    ATT&CK实战系列
    Metasploit Framework(二)
    RoarCTF 2019
  • 原文地址:https://www.cnblogs.com/paopao123/p/10725682.html
Copyright © 2011-2022 走看看