Десятичный разделитель в PHP (и большинстве других компьютерных языков) - это точка, а не запятая:
Обновление: floatval () прекращает синтаксический анализ строки, как только находит не числовой символ.Вот пример из руководства:
<?php
$var = '122.34343The';
$float_value_of_var = floatval($var);
echo $float_value_of_var; // 122.34343
?>
Если вам нужно извлечь число, которое не в английском формате, вы должны написать свой собственный код.Вот предложение:
function to_decimal($string, $decimal_separator=',', $thousand_separator='.'){
$value = strtr($string, array(
$decimal_separator => '.',
$thousand_separator => '',
));
if( !is_numeric($value) ){
return NAN;
}
return floatval($value);
}