kiedy wybuchnie csv plik na separator (;) Pomyślnie eksplodować w niektórych excel program i nie powiodło się w innychrozbić plik csv na ogranicznik (;) i ogranicznik (,)?
także kiedy wybuchnie pliku csv na ogranicznik (,) Pomyślnie eksplodować w niektórych excel program i nie powiodło się inne
Jak mogę dokonać eksplozji we wszystkich wersjach programu Excel? Skąd mogę wiedzieć, że idealny ogranicznik może eksplodować?
tak jest kod ..
if (!function_exists('create_csv')) {
function create_csv($query, &$filename = false, $old_csv = false) {
if(!$filename) $filename = "data_export_".date("Y-m-d").".csv";
$ci = &get_instance();
$ci->load->helper('download');
$ci->load->dbutil();
$delimiter = ";";
$newline = "\r\n";
$csv = "Data:".date("Y-m-d").$newline;
if($old_csv)
$csv .= $old_csv;
else
$csv .= $ci->dbutil->csv_from_result($query, $delimiter, $newline);
$columns = explode($newline, $csv);
$titles = explode($delimiter, $columns[1]);
$new_titles = array();
foreach ($titles as $item) {
array_push($new_titles, lang(trim($item,'"')));
}
$columns[1] = implode($delimiter, $new_titles);
$csv = implode($newline, $columns);
return $csv;
}
}
czasami kładę $ separator = ""; i sometims $ delimiter = ",";
Dzięki ..
nie można. Separator, którego używa każda instancja MS Excel, jest zależny od ustawień narodowych, zazwyczaj w zależności od tego, czy kraj, w którym jest skonfigurowany, używa separatora dziesiętnego jako ',' lub '.' ... częściej występuje'; ', ale nie ma uniwersalnej odpowiedzi ... gdyby tak było, nie musiałbyś nawet pytać –
Jest to jeden z powodów, dla których CSV nie jest dobrym formatem do użycia jako alternatywa dla rodzimych formatów Excela –
Czy masz jakiś kod do wyświetlenia nas? Czy próbujesz odczytać plik, a następnie rozbić linie lub używasz fgetcsv? – foxbeefly