Heim  >  Artikel  >  Backend-Entwicklung  >  PHP verwendet open und fwrite, um Dateien (Code) in mehreren Formaten zu exportieren

PHP verwendet open und fwrite, um Dateien (Code) in mehreren Formaten zu exportieren

不言
不言Original
2018-08-18 17:40:272717Durchsuche

Der Inhalt dieses Artikels befasst sich mit der Verwendung von PHP zum Exportieren von Dateien (Code) in verschiedenen Formaten. Ich hoffe, dass er für Sie hilfreich ist.

Rendering

PHP verwendet open und fwrite, um Dateien (Code) in mehreren Formaten zu exportieren
PHP verwendet open und fwrite, um Dateien (Code) in mehreren Formaten zu exportieren
PHP verwendet open und fwrite, um Dateien (Code) in mehreren Formaten zu exportieren
PHP verwendet open und fwrite, um Dateien (Code) in mehreren Formaten zu exportieren

Quellcode-Analyse

<?php
/**
 * Created by PhpStorm.
 * User: Jason0727
 * Date: 2018/8/9
 * Time: 14:48
 */header("Content-Type: text/html;charset=utf-8");//定义文件名
 $fileName = "测试文件名_" . date(&#39;YmdHis&#39;);//文件名中间不能有空格//文件名转码,以防乱码
 $fileName = iconv(&#39;UTF-8&#39;,&#39;GBK&#39;,$fileName);///文件后缀
 $ext = ".csv";//$ext = ".txt";//字段间的拼接符号//
 $dot = "|";$dot = ",";//打开文件句柄,记得赋权,否则报错
 $fp = fopen("./files/" . $fileName . $ext,"a") or die("unable to open file!");//是否需要列表名称,0=>不需要 1需要,默认为1
 $is_need_headerList = 1;//检测是否需要
 headerListif($is_need_headerList == 1){    //定义列表名称
    $headerList = [&#39;列表1&#39;,&#39;列表2&#39;,&#39;列表3&#39;];    //初始化写入文件的字符串
    $headerTxt = "";    //列表名称转码
    foreach ($headerList as $v){        
    $headerTxt .= $v. $dot;
    }    
    $headerTxt = rtrim($headerTxt,$dot)."\n";    //将列表名称写入文件句柄
    fwrite($fp, $headerTxt);
}//初始化数组数据$data = [
    [&#39;id&#39;=>&#39;值1&#39;,&#39;name&#39;=>&#39;值2&#39;,&#39;hobby&#39;=>&#39;值3&#39;],
    [&#39;id&#39;=>&#39;值11&#39;,&#39;name&#39;=>&#39;值22&#39;,&#39;hobby&#39;=>&#39;值33&#39;],
    [&#39;id&#39;=>&#39;值111&#39;,&#39;name&#39;=>&#39;值222&#39;,&#39;hobby&#39;=>&#39;值333&#39;]
];
//循环写入数据//初始化数组的总数
$count = count($data);//循环次数
$limit = 0;foreach ($data as $v){    
$limit++;    
$txt = $v[&#39;id&#39;] .$dot . $v[&#39;name&#39;] .$dot .$v[&#39;hobby&#39;];    
if($count != $limit)//避免最后一次换行
        $txt .= $dot .PHP_EOL;
    fwrite($fp,$txt);
}
fclose($fp);

Analyse häufiger Probleme

  1. Die Zeichenfolge enthält Sonderzeichen. Während der Kodierungskonvertierung muss //IGNORE festgelegt werden, andernfalls wird ein Fehler gemeldet

$c = "测试•字符传换•五一快乐!";echo iconv(&#39;UTF-8&#39;,&#39;GBK//IGNORE&#39;,$c);//测试字符传换五一快乐!echo iconv(&#39;UTF-8&#39;,&#39;GBK&#39;,$c);//Detected an illegal character in input string
  1. Die numerische Zeichenfolge wird formatiert und es müssen unsichtbare Zeichen hinzugefügt werden, um sie zu normalisieren, wie zum Beispiel: „t“

  2. Transkodierungsproblem, besondere Umstände, besondere Handhabung, je nach Situation

Link: https://pan.baidu.com/s/1SFB3lPooUYl-cVv4QovNkA Passwort: 2o6b

Verwandte Empfehlungen:

Implementierungscode für PHP zum Exportieren von Excel-Dateien im CSV-Format

Wie PHP Fuzzy-Abfragen implementiert (Grafikcode)

Das obige ist der detaillierte Inhalt vonPHP verwendet open und fwrite, um Dateien (Code) in mehreren Formaten zu exportieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn