微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – 下拉浮点值未显示选中的选项

我正在显示高度下拉值和内容浮点值.当我在编辑表单上显示此下拉菜单时,不显示其中选择的旧值高度.

我希望在我的下拉列表中显示5.6英尺高度值,其值为4,4.1,4.2 …… 6.10,6.11,7等.

以下是我使用的代码

<select name="height">
    <?PHP for($height=(4.0); $height <= 7; $height=($height+0.1) ): ?>
        <option value='<?PHP echo $height;?>' <?PHP if((5.6) == ($height)) echo "selected=selected"; ?> ><?PHP echo $height;?> ft</option>
    <?PHP endfor;?>                     
</select>

有人知道这个问题的解决方案吗?请帮忙.

解决方法:

正如马克在评论中所说,这是一个浮点精度问题.您可以通过在$height上使用round()来解决此问题,如下所示:

<select name="height">
    <?PHP for($height=(4.0); $height <= 7; $height=($height+0.1) ): ?>
        <option value='<?PHP echo $height;?>' <?PHP if(5.6==round($height,2)) echo "selected=selected"; ?> ><?PHP echo $height;?> ft</option>
    <?PHP endfor;?>                     
</select>

更多信息可以在这里找到:A: PHP Math Precision – NullUserException

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐