Potrzebuję umieścić wszystkie ciągi znaków i liczby z podwójnymi cudzysłowami w pliku CSV za pomocą PHP.Załączenie każdego pola z podwójnymi cudzysłowami w pliku CSV za pomocą PHP?
Jak mogę utworzyć plik CSV z PHP we wszystkich danych w podwójnym cudzysłowie?
używam tego kodu, aby wygenerować plik CSV - Używam CodeIgniter ramy
$array = array(
array(
(string)'XXX XX XX',
(string)'3',
(string)'68878353',
(string)'',
(string)'[email protected]',
),
);
$this->load->helper('csv');
array_to_csv($array, 'blueform.csv');
Wyjście Dostaję:
"XXX XX XX",3,68878353,,[email protected]
oczekiwany wynik:
"XXX XX XX","3","68878353","","[email protected]"
Kodeks array_to_csv
if (!function_exists('array_to_csv')) {
function array_to_csv($array, $download = "") {
if ($download != "") {
header('Content-Type: application/csv');
header('Content-Disposition: attachement; filename="' . $download . '"');
}
ob_start();
$f = fopen('php://output', 'w') or show_error("Can't open php://output");
$n = 0;
foreach ($array as $line) {
$n++;
if (!fputcsv($f, $line)) {
show_error("Can't write line $n: $line");
}
}
fclose($f) or show_error("Can't close php://output");
$str = ob_get_contents();
ob_end_clean();
if ($download == "") {
return $str;
} else {
echo $str;
}
}
}
góry dziękuję
Po wpisaniu kodu związanego z tą funkcją "---->' 'array_to_csv' również –
standardową praktyką przy plikach CSV jest zawijanie pól w cudzysłów, jeśli dane zawierają przecinek lub cudzysłowy. Tak właśnie działa funkcja PHP "fputcsv", a to jest to, czego można się spodziewać po prawie każdym oprogramowaniu do czytania CSV, z jakim kiedykolwiek miałem do czynienia. Czy istnieje szczególny powód, dla którego potrzebujesz czegoś innego? (Zgaduję, że importujesz dane do jakiegoś starego, chrupiącego oprogramowania, które egzekwuje surowe wymagania?) – Simba
@Simba Mam konkretny powód dla tego ... Generuję ten plik CSV do przesłania na stronę rządu Singapuru, I nie mogę przesłać pliku do strony wygenerowanej przy użyciu PHP ... po porównaniu plików - jeden plik, który mogę przesłać i inny plik, który generuję przy użyciu php. Dowiedziałem się, że główną różnicą jest plik, w którym mogę przesłać podwójne cytaty we wszystkich wartościach – Anudeep