如何使用PHP将米转换为英尺

时间:2012-08-20 20:26:17

标签: php

我已经使用了这个显示错误的代码:即如果我的米是175米但是当我转换它时它会显示那个东西

<?php
function metersToFeetInches($meters, $echo = true)
{
    $m = $meters;
    $valInFeet = $m*3.2808399;
    $valFeet = (int)$valInFeet;
    $valInches = round(($valInFeet-$valFeet)*12);
    $data = $valFeet."&prime;".$valInches."&Prime;";
    if($echo == true)
    {
            echo $data;
    } else {
            return $data;
    }
}
?>
<?php
$feetInches = metersToFeetInches(1.75,false);
echo $feetInches;
?>

2 个答案:

答案 0 :(得分:6)

这是您可以在Google上轻松找到的内容之一,但我猜您看起来并不比第一个链接更多。

无论如何,你应该这样做。

<?php

function metersToFeet($meters) {
    return floatval($meters) * 3.2808399;
}

?>

但为什么这比你发布的代码更好?好吧,功能不应该做所有事情。你应该为某个动作编写一个函数,而不是一个大函数,你可以满足所有需要。因为 if 你需要为该功能添加内容或更改操作的顺序,所以这是一项很多工作。

此外,您的函数有一个选项$echo。但为什么你需要呢?你可以为每个函数添加这样一个选项,但PHP有一个很好的突击队:echo。相反,编写echo metersToFeet(10)会更好。如果您需要将结果保存在变量中,请$value = metersToFeet(10)

答案 1 :(得分:0)

<?php
function metersToFeetInches($meters, $echo = true)
{
    $m = $meters;
    $valInFeet = $m*3.2808399;
    $valFeet = (int)$valInFeet;
    $valInches = round(($valInFeet-$valFeet)*12);
    $data = $valFeet."&prime;".$valInches."&Prime;";
    if($echo == true)
    {
        echo $data;
    } else {
        return $data;
    }
}
?>