Heim > Backend-Entwicklung > PHP-Tutorial > PHP-Beispiel für das Lesen einer CSV-Datei

PHP-Beispiel für das Lesen einer CSV-Datei

怪我咯
Freigeben: 2023-03-14 07:44:01
Original
1747 Leute haben es durchsucht

CSV ist ein vielseitiges, relativ einfaches Dateiformat, das von Anwendern, Unternehmen und der Wissenschaft weit verbreitet ist. Die am weitesten verbreitete Anwendung ist die Übertragung von Tabellendaten zwischen Programmen, die ihrerseits mit inkompatiblen Formaten arbeiten (oft proprietäre und/oder nicht-kanonische Formate). Denn viele Programme unterstützen eine Variante von CSV, zumindest als optionales Ein-/Ausgabeformat.

Zum Beispiel muss ein Benutzer möglicherweise Informationen von einem Datenbankprogramm, das Daten in einem proprietären Format speichert, in eine Tabellenkalkulation mit Daten in einem völlig anderen Format austauschen. Höchstwahrscheinlich kann das Datenbankprogramm die Daten als „CSV“ exportieren und die exportierte CSV-Datei kann dann von einem Tabellenkalkulationsprogramm importiert werden.

  • „CSV“ ist kein einzelnes, genau definiertes Format (obwohl RFC 4180 eine häufig verwendete Definition hat). In der Praxis bezieht sich der Begriff „CSV“ daher im Großen und Ganzen auf jede Datei, die:

  • Klartext ist und einen bestimmten Zeichensatz verwendet, wie z. B. ASCII, Unicode , EBCDIC oder GB2312;

  • besteht aus Datensätzen (normalerweise ein Datensatz pro Zeile);

  • Jeder Datensatz ist durch Trennzeichen in Felder unterteilt (typischerweise). Trennzeichen sind Kommas, Semikolons oder Tabulatoren; manchmal können Trennzeichen optionale Leerzeichen enthalten.

  • Jeder Datensatz hat die gleiche Feldsequenz.

Unter diesen allgemeinen Einschränkungen gibt es viele CSV-Varianten, sodass CSV-Dateien nicht vollständig interoperabel sind. Diese Abweichungen sind jedoch sehr gering, und es gibt viele Anwendungen, die es dem Benutzer ermöglichen, eine Vorschau der Datei anzuzeigen (was möglich ist, da es sich um reinen Text handelt) und dann Trennzeichen, Escape-Regeln usw. festzulegen. Wenn die Variation in einer bestimmten CSV-Datei zu groß ist, um von einem bestimmten Empfangsprogramm unterstützt zu werden, besteht der praktikable Ansatz häufig darin, die Datei manuell zu überprüfen und zu bearbeiten oder das Problem mit einem einfachen Programm zu beheben. Daher sind CSV-Dateien in der Praxis immer noch sehr praktisch.


Dieser Artikel stellt hauptsächlich die von PHP implementierte Funktion zum Lesen von CSV-Dateien vor und analysiert das Lesen von CSV-Dateien und Strings durch PHP in Form von Beispiele für betriebliche Fähigkeiten wie Array-Traversierung und -Konvertierung können Freunde in Not auf

function read_csv($cvs) {
  $shuang = false;
  $str = file_get_contents($cvs);
  for ($i=0;$i<strlen($str);$i++) {
    if($str{$i}==&#39;"&#39;) {
      if($shuang) {
        if($str{$i+1}==&#39;"&#39;) {
          $str{$i} = &#39;*&#39;;
          $str{$i+1} = &#39;*&#39;;
        } else {
          $shuang = false;
        }
      } else {
        $shuang = true;
      }
    }
    if($str{$i}==&#39;,&#39;) {
      if($shuang) {
      } else {
        $str{$i} = &#39;|&#39;;
      }
    }
    if($str{$i}=="\n") {
      if($shuang) {
        $str{$i} = &#39;^&#39;;
      } else {
      }
    }
  }
  $str = str_replace(array(&#39;"&#39;,&#39;*&#39;),array(&#39;&#39;,&#39;"&#39;),$str);
  $a1 = explode("\n",$str);
  $array = array();
  foreach($a1 as $k=>$value) {
    if($value) {
      $value = str_replace("^","\n",$value);
      $array[$k] = explode("|",$value);
    }
  }
  return $array;
}
Nach dem Login kopieren
verweisen

Das obige ist der detaillierte Inhalt vonPHP-Beispiel für das Lesen einer CSV-Datei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage