我知道这个问题可能之前已经回答过,但是我还无法为我的代码找到解决方案。我的问题是我的文件的小数点用点号分隔,我需要将其更改为逗号。
这是我的代码
if (isset($_POST['btn-upload'])){
copy("$sourcepath/$latest_filename","$copy/$latest_filename");
// Here i split the csv file, from second line. and using the first and fourth lines as the headers.
if (($openfile = fopen("$copy/$latest_filename", "r")) !== false) {
$header1 = fgetcsv($openfile, 1000, ";"); // consume, but don't use
$csv->createPalleTable($latest_filename);
$csv->insertPalleTable($latest_filename, array_map("utf8_encode", fgetcsv($openfile, 1000, ";")));
$delimiting_row = fgetcsv($openfile, 1000, ";"); // consume, but don't use
$header2 = fgetcsv($openfile, 1000, ";"); // consume, but don't use
$csv->createCsvTable($latest_filename);
while ($getdata = fgetcsv($openfile, 1000, ";")) {
$csv->insertCsvTable($latest_filename, array_map("utf8_encode", $getdata));
}
}
}
据我所知,我需要使用number_format。但是我不知道如何在代码中使用它。
我知道,当您不知道该方法的作用时,我的代码可能会有些混乱。我可以解释是否需要。但是他们几乎按照他们所说的去做。
感谢您的帮助。
示例输出
1 1)高度130平均(L)Y检查维度标量130.00 129.00 -1.00 1.00 0.00
2 1)hk高度130平均(L)Y检验维数标量130.00 130.00 -1.00 1.00 0.00
3 2)Ø131,5Øinspection_dimension_scalar 131.00 131.00 0.00 0.00 0.00
4 3)dk2Ø199,3Øinspection_dimension_scalar 199.00 198.00 -1.00 1.00 0.00
问题是1.00应该是1,29,例如
希望它有助于了解该方法的作用。
$csv
//functionen til at vise den sidste nye tabel fra databasen.
public function getCsv($latest_filename)
{
return $this->db->toList("SELECT * FROM `$latest_filename`");
}
public function getPalle($latest_filename)
{
return $this->db->toList("SELECT * FROM `Palle_$latest_filename`");
}
public function createCsvTable($latest_filename)
{
return $this->db->toList("CREATE TABLE IF NOT EXISTS `$latest_filename`(
id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-- FK_product INT(11),
-- FOREIGN KEY (FK_product) REFERENCES product_tb(product_id),
Name VARCHAR(50),
Datum VARCHAR(50),
Property VARCHAR(50),
Criterion VARCHAR(50),
Type VARCHAR(50),
Nominal DECIMAL(10,2),
Actual DECIMAL(10,2),
Tolminus DECIMAL(10,2),
Tolplus DECIMAL(10,2),
Dev DECIMAL(10,2))
");
}
public function insertCsvTable($latest_filename ,$fncsvdata)
{
return $this->db->toList("INSERT INTO `$latest_filename` (`Name`, `Datum`, `Property`, `Criterion`, `Type`, `Nominal`, `Actual`,`Tolminus`,`Tolplus`,`Dev`)
VALUES (:Name, :Datum, :Property, :Criterion, :Type, :Nominal, :Actual, :Tolminus, :Tolplus, :Dev)",
[
':Name' => $fncsvdata[0],
':Datum'=> $fncsvdata[1],
':Property'=> $fncsvdata[2],
':Criterion'=> $fncsvdata[3],
':Type'=> $fncsvdata[4],
':Nominal'=> $fncsvdata[5],
':Actual'=> $fncsvdata[6],
':Tolminus'=> $fncsvdata[7],
':Tolplus'=> $fncsvdata[8],
':Dev'=> $fncsvdata[9]
]
);
}
public function createPalleTable($latest_filename)
{
return $this->db->toList("CREATE TABLE IF NOT EXISTS `Palle_$latest_filename`(
id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
-- FK_product INT(11),
-- FOREIGN KEY (FK_product) REFERENCES product_tb(product_id),
Palle_nr VARCHAR(50),
Varenummer VARCHAR(50),
Ordre_nummer VARCHAR(50),
Operatoer VARCHAR(50),
Maskine_nr VARCHAR(50),
Raavare_batch_nr VARCHAR(50),
Dato_ur_stillet VARCHAR(50),
Klokke_fuldsvejst VARCHAR(50),
Fuldstoebning_af_klokke VARCHAR(50),
Afgratning_af_overflade VARCHAR(50),
Vaegt DECIMAL(10,2))
");
}
public function insertPalleTable($latest_filename ,$palledata)
{
return $this->db->toList("INSERT INTO `Palle_$latest_filename` (`Palle_nr`, `Varenummer`, `Ordre_nummer`, `Operatoer`, `Maskine_nr`,
`Raavare_batch_nr`, `Dato_ur_stillet`,`Klokke_fuldsvejst`,`Fuldstoebning_af_klokke`,`Afgratning_af_overflade`,`Vaegt`)
VALUES (:Palle_nr, :Varenummer, :Ordre_nummer, :Operatoer, :Maskine_nr, :Raavare_batch_nr, :Dato_ur_stillet,
:Klokke_fuldsvejst, :Fuldstoebning_af_klokke, :Afgratning_af_overflade, :Vaegt)",
[
':Palle_nr' => $palledata[0],
':Varenummer'=> $palledata[1],
':Ordre_nummer'=> $palledata[2],
':Operatoer'=> $palledata[3],
':Maskine_nr'=> $palledata[4],
':Raavare_batch_nr'=> $palledata[5],
':Dato_ur_stillet'=> $palledata[6],
':Klokke_fuldsvejst'=> $palledata[7],
':Fuldstoebning_af_klokke'=> $palledata[8],
':Afgratning_af_overflade'=> $palledata[9],
':Vaegt'=> $palledata[10]
]
);
}