expm1_basic.phpt 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. --TEST--
  2. Test expm1() - basic function test for expm1()
  3. --INI--
  4. precision=14
  5. --FILE--
  6. <?php
  7. /* Prototype : float expm1 ( float $arg )
  8. * Description: Returns exp(number) - 1, computed in a way that is accurate even
  9. * when the value of number is close to zero.
  10. * Source code: ext/standard/math.c
  11. */
  12. echo "*** Testing expm1() : basic functionality ***\n";
  13. $values = array(10,
  14. 10.3,
  15. 3.9505e3,
  16. 037,
  17. 0x5F,
  18. "10",
  19. "3950.5",
  20. "3.9505e3",
  21. "039",
  22. true,
  23. false,
  24. null,
  25. );
  26. // loop through each element of $values to check the behaviour of expm1()
  27. $iterator = 1;
  28. foreach($values as $value) {
  29. echo "\n-- Iteration $iterator --\n";
  30. var_dump(expm1($value));
  31. $iterator++;
  32. };
  33. ?>
  34. ===Done===
  35. --EXPECT--
  36. *** Testing expm1() : basic functionality ***
  37. -- Iteration 1 --
  38. float(22025.465794807)
  39. -- Iteration 2 --
  40. float(29731.618852891)
  41. -- Iteration 3 --
  42. float(INF)
  43. -- Iteration 4 --
  44. float(29048849665246)
  45. -- Iteration 5 --
  46. float(1.811239082889E+41)
  47. -- Iteration 6 --
  48. float(22025.465794807)
  49. -- Iteration 7 --
  50. float(INF)
  51. -- Iteration 8 --
  52. float(INF)
  53. -- Iteration 9 --
  54. float(8.6593400423994E+16)
  55. -- Iteration 10 --
  56. float(1.718281828459)
  57. -- Iteration 11 --
  58. float(0)
  59. -- Iteration 12 --
  60. float(0)
  61. ===Done===