我的问题:我该怎么做 PHP代码输出对MySql数据库有效的十进制数字?
I have tried several times to rewrite the code. Without a result
<?php
$str_zahl = $_GET['miete'];
function float($str_zahl)
{
if(preg_match('/([0-9\.,-]+)/', $str_zahl, $array_treffer))
{
// Number found so we can carry on
$str_zahl = $array_treffer[0];
if(preg_match('/^[0-9.-\s]*[\,]{1}[0-9-]{0,2}$/', $str_zahl))
{
// Comma as Decimal Separator
// Remove all points and then convert the comma to a point
$str_zahl = str_replace('.', '', $str_zahl);
$str_zahl = str_replace(',', '.', $str_zahl);
return floatval($str_zahl);
}
elseif(preg_match('/^[0-9,-\s]*[\.]{1}[0-9-]{0,2}$/', $str_zahl))
{
// point as decimal separator // remove all commas
$str_zahl = str_replace(',', '', $str_zahl);
return floatval($str_zahl);
}
elseif (preg_match('/^[0-9.-\s]*[\.]{1}[0-9-]{0,3}$/', $str_zahl))
{
// There are only thousands of separators
// remove all points
$str_zahl = str_replace('.', '', $str_zahl);
return floatval($str_zahl);
}
elseif (preg_match('/^[0-9,-\s]*[\,]{1}[0-9-]{0,3}$/', $str_zahl))
{
// There are only thousands of separators
// remove all commas
$str_zahl = str_replace(',', '', $str_zahl);
return floatval($str_zahl);
}
else
return floatval($str_zahl);
}
else
{
return 0;
}
}
?>
<?php echo $str_zahl; ?>
该数字未格式化。
没有引发错误消息。但是,这还是行不通的。
对于数字,例如1,000,演示文稿不会更改。 我是PHP的初学者,我真的需要帮助