php - 为什么这样计算不了,结果总是返回0
为情所困
为情所困 2017-05-16 13:15:48
[PHP讨论组]
                    <?php
                    $a = $this->item_info['jhl'];
                    $c = intval($a);
                    $b = $this->item_info['price'];
                    $d = intval($b);

                    echo intval((500 / $c) * $d)
                    ; ?>
$this->item_info['jhl']跟$this->item_info['price'];在数据库里面都是数字,如123,456,789这样的数字

为什么计算结果都是0呢

数据库字段为varchar

为情所困
为情所困

全部回复(2)
PHP中文网

intval(500/intval("789")) = 0
intval(500/intval("345")) = 1,
如上

过去多啦不再A梦

遇到这种问题把每个变量打印出来,用var_dump(),我猜测是因为$c比500大,然后intval()对于浮点数只会取整,比如intval(0.5)的结果就是0

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号