Estoy tomando valores desde un archivo csv que son insertados en una tabla mysql
Algunos de los valores del csv son int, string, float, etc
Mi problema es con los float.
Los float en el csv son así por ejemplo: 3.470,000, 1.650,520, 276,0003. 470,000, 77,030.
Mi problema son con los 2 primeros, porque tienen " . "
Código PHP:
while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
if($row_count>0){
foreach($data as $key=>$value) {
if($value == "NULL"){
$data[$key] = "NULL";
}else{
if($key==0){
$numPos=trim($data[0]);//I trim it
$numPos=explode(' ',$numPos);
for($i=0;$i<= count($numPos)-1;$i++){
while($numPos[$i]==''){
array_splice($numPos, $i,1);
}
}
$value=implode('.',$numPos);
//$index = str_replace('.', "", $value);
}
$data[$key] = "'" . mysql_real_escape_string(trim($value)) . "'";
}
}
//$rows[$index] = implode(",",$data);
$rows[] = implode(",",$data);
}
$row_count++;
}
Esto tira como resultado una cadena así: "hola","123","adios", "3.470,000","fin", etc
Yo necesito analizar campo por campo del csv y darme cuenta cuando el valor es por ejemplo 3.470,000, y si encuentro un match, pasarlo a 3470,000
También el valor puede ser algo como: 1.253.456.876.456,00
Lo puedo hacer un una expreción regular?