Laravel使用increment和decrement出现进度丢失怎么解决

这篇文章主要介绍“Laravel使用increment和decrement出现进度丢失怎么解决”,在日常操作中,相信很多人在Laravel使用increment和decrement出现进度丢失怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Laravel使用increment和decrement出现进度丢失怎么解决”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

成都创新互联公司长期为成百上千家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为雁峰企业提供专业的做网站、成都网站设计雁峰网站改版等技术服务。拥有十余年丰富建站经验和众多成功案例,为您定制开发。

因为历史原因,在Laravel 5.3版本 使用 Eloquentincrement 出现了精度丢失,

重写incrementOrDecrementAttributeValue方法,使用 bcadd 进行计算,保留2位小数。

    protected function incrementOrDecrementAttributeValue($column, $amount, $method)
    {
        $this->{$column} = bcadd($this->{$column}, ($method == 'increment' ? $amount : $amount * -1), 2);
        $this->syncOriginalAttribute($column);
    }

注: increment 不建议计算浮点数

到此,关于“Laravel使用increment和decrement出现进度丢失怎么解决”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!


分享标题:Laravel使用increment和decrement出现进度丢失怎么解决
本文链接:http://hbruida.cn/article/gpcohg.html