Mysql
 sql >> Baza danych >  >> RDS >> Mysql

jak uciec przed ogranicznikiem zawartości kolumny podczas eksportu csv

Po prostu użyj fputcsv dba o ucieczkę i tworzenie poprawnych danych csv.

<?php

$list = array (
    array('aaa', 'bbb', 'ccc', 'dddd'),
    array('123', '456', '789'),
    array('"aaa"', '"bbb"')
);

$fp = fopen('file.csv', 'w');

foreach ($list as $fields) {
    fputcsv($fp, $fields);
}

fclose($fp);
?>

Wyjście:

aaa,bbb,ccc,dddd
123,456,789
"""aaa""","""bbb"""

Edytuj

Zawsze możesz użyć kombinacji tmpfile aby otworzyć plik, który zostanie automatycznie usunięty na końcu żądania, napisz do niego, a następnie po utworzeniu raportu wyślij jego zawartość za pomocą fread . Musisz użyć fread, ponieważ tmpfile zwraca zasób, w przeciwnym razie możesz użyć tempnam + file_get_contents ale w takim przypadku musisz otworzyć plik i wyczyścić go po samodzielnym przeczytaniu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uruchamianie skryptu .sql przy użyciu MySQL z JDBC

  2. Jak automatycznie usunąć wiersze danych z tabeli mysql po 24 godzinach od umieszczenia danych w tabeli?

  3. Kaskadowe pole kombi formularza dostępu nie pokazuje nic w rozwijanym menu

  4. MYSQL - data-czas do sekund

  5. MySQL Left Joins:Wybierz wszystko z jednej tabeli, ale tylko pasującą wartość w drugiej tabeli z kryteriami