本篇文章给大家带来了关于php的相关知识,其中主要介绍了通过PHP进行金额(元转分)的互相转化出现的错误,感兴趣的朋友下面一起来看一下吧,希望对大家有帮助。

php 元转分的错误示范

说明

一旦进行金额的互相转化,就非常容易发生错误。所以写个文章记录下来。

错误主要的原因就是内部是浮点数变量。

有兴趣的同学可以试试。

错误的示范。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

$price=20.08;

echo yuan_to_fen($price);

function yuan_to_fen($price)

{

  return intval(100 * $price);

}

function yuan_to_fen2($price)

{

  return floor(100 * $price);

}

function yuan_to_fen3($price)

{

  return (int)(100 * $price);

}

正确的示范

1

2

3

4

5

6

7

$price=20.08;

echo yuan_to_fen($price);

function yuan_to_fen($price)

{

  return round(100 * $price);

}

汇总

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

<?php

$a = 20.08;

$b = yuan_to_fen1($a);

$c = yuan_to_fen2($a);

$d = yuan_to_fen3($a);

$e = yuan_to_fen4($a);

$x = yuan_to_fen31($a);

$y = yuan_to_fen32($a);

$z = yuan_to_fen33($a);

echo('价格=' . $b . "\n");//2007

echo('价格2=' . $c . "\n");//2007

echo('价格3=' . $d . "\n");//2007

echo('价格4=' . $e . "\n");//2008

echo('方法31=' . $x . "\n");//2008

echo('方法32=' . $y . "\n");//2008

echo('方法33=' . $z . "\n");//2008

function yuan_to_fen1($price)

{

  return intval(100 * $price);

}

function yuan_to_fen2($price)

{

  return floor(100 * $price);

}

function yuan_to_fen3($price)

{

  return (int)(100 * $price);

}

function yuan_to_fen4($price)

{

  return 100 * $price;

}

function yuan_to_fen31($price)

{

  return intval(strval(100 * $price));

}

function yuan_to_fen32($price)

{

  //返回浮点数。

  return round(100 * $price);

}

function yuan_to_fen33($price)

{

  //返回整型,比较推荐这种。

  return intval(round(100 * $price));

}

—–文章转载自PHP中文网如有侵权请联系2827785621@qq.com删除

下载声明:
  • 本站资源来源于用户分享、互换、购买以及网络收集等渠道,本站不提供任何技术服务及有偿服务,资源仅提供给大家学习研究请勿作它用。
  • 赞助本站仅为维持服务器日常运行并非购买程序及源码费用因此不提供任何技术支持,如果你喜欢该程序,请购买正版!
版权声明:
  • 下载本站资源学习研究的默认同意本站【版权声明】若本站提供的资源侵犯到你的权益,请提交版权证明文件至邮箱56ziyuan#gmail.com(将#替换为@)站长将会在三个工作日内为您删除。
免责声明:
  • 您好,本站所有资源(包括但不限于:源码、素材、工具、字体、图像、模板等)均为用户分享、互换、购买以及网络收集而来,并未取得原始权利人授权,因此禁止一切商用行为,仅可用于个人研究学习使用。请务必于下载后24小时内彻底删除,一切因下载人使用所引起的法律相关责任,包括但不限于:侵权,索赔,法律责任,刑事责任等相关责任,全部由下载人/使用人,全部承担。以上说明,一经发布视为您已全部阅读,理解、同意以上内容,如对以上内容持有异议,请勿下载,谢谢配合!支持正版,人人有责,如不慎对您的合法权益构成侵犯,请联系我们对相应内容进行删除,谢谢!