Excel将1/1转换为日期(DD.MM.YYYY)

时间:2017-11-06 11:24:44

标签: php excel

我正在从网络应用程序导出CSV,我有一个列格式,例如1/1或1/6 ...并且Excel将其转换为1.1.2017。或1.6.2017。

这是我的出口功能:

public function exportCSVPrint($id)
    {
        $tablePrint = DB::connection('mysql2')->table('mc_schaltdaten_print')->select('s_magazin', 'datum', 's_ausgabe', 's_ausrichtung', 's_jahrgang', 's_format', 's_seite', 's_seiten', 'brutto', 'pzn')->where('spotid', $id)->get();
        $csv        = \League\Csv\Writer::createFromFileObject(new \SplTempFileObject());

        $header = [Lang::get('language.magazine'), Lang::get('language.date'), Lang::get('language.ausgabeVersion'), Lang::get('language.seite'), Lang::get('language.seiten'), 'Format', Lang::get('language.ausrichtung'), Lang::get('language.anzeigenPreis')];
        $csv->setDelimiter(';');
        $csv->insertOne($header);

        foreach ($tablePrint as $t) {
            $rows = [
                [$t->s_magazin, $t->datum, $t->s_ausgabe, $t->s_seite, $t->s_seiten, $t->s_format, $t->s_ausrichtung, $t->brutto],
            ];

            $csv->insertAll($rows);
        }
        $csv->output($id . '.csv');
    }

如何将其作为原始1/1,而不是日期格式?

1 个答案:

答案 0 :(得分:1)

烦人不是吗?

Excel"帮助"当您输入类似a / b的内容时,假定您输入了一个适当默认年份的日期。

如果您在字符串前加上单引号字符',则可以保留原始文本。