1--TEST--
2Testing floatval() and its alias doubleval() Functions
3--INI--
4precision = 14
5--FILE--
6<?php
7/* Prototype: float floatval( mixed $var );
8 * Description: Returns the float value of var.
9 */
10
11// different valid  float values
12$valid_floats = array(
13       "0.0"  => 0.0,
14       "1.0"  => 1.0,
15       "-1.0" => -1.0,
16       "1.234" => 1.234,
17 	   "-1.234" => -1.234,
18       "1.2e3" => 1.2e3,
19	   "-1.2e3" => -1.2e3,
20	   "10.0000000000000000005" => 10.0000000000000000005,
21	   "10.5e+5" => 10.5e+5,
22       "1e5" => 1e5,
23	   "-1e5" => -1e5,
24       "1e5" => 1e-5,
25	   "-1e-1" => -1e-1,
26	   "1e+5" => 1e+5,
27	   "-1e+5" =>-1e+5,
28	   "1E5" => 1E5,
29	   "-1E5" => -1E5,
30	   "1E+5" => 1E+5,
31	   "-1E5" => -1E+5,
32	   ".5e+7" => .5e+7,
33	   "-.5e+7" =>-.5e+7
34);
35
36/* loop to check that floatval() recognizes different
37   float values, expected output:float value for valid floating point number */
38echo "*** Testing floatval() with valid float values ***\n";
39foreach ($valid_floats as $key => $value ) {
40   echo "\n-- Iteration : $key -- \n";
41   var_dump( floatval($value) );
42}
43
44/* loop to check that doubleval() also recognizes different
45   float values, expected output:float value for valid floating point number */
46echo "\n*** Testing doubleval() with valid float values ***\n";
47foreach ($valid_floats as $key => $value ) {
48   echo "\n-- Iteration : $key -- \n";
49   var_dump( doubleval($value) );
50}
51
52?>
53===DONE===
54--EXPECT--
55*** Testing floatval() with valid float values ***
56
57-- Iteration : 0.0 --
58float(0)
59
60-- Iteration : 1.0 --
61float(1)
62
63-- Iteration : -1.0 --
64float(-1)
65
66-- Iteration : 1.234 --
67float(1.234)
68
69-- Iteration : -1.234 --
70float(-1.234)
71
72-- Iteration : 1.2e3 --
73float(1200)
74
75-- Iteration : -1.2e3 --
76float(-1200)
77
78-- Iteration : 10.0000000000000000005 --
79float(10)
80
81-- Iteration : 10.5e+5 --
82float(1050000)
83
84-- Iteration : 1e5 --
85float(1.0E-5)
86
87-- Iteration : -1e5 --
88float(-100000)
89
90-- Iteration : -1e-1 --
91float(-0.1)
92
93-- Iteration : 1e+5 --
94float(100000)
95
96-- Iteration : -1e+5 --
97float(-100000)
98
99-- Iteration : 1E5 --
100float(100000)
101
102-- Iteration : -1E5 --
103float(-100000)
104
105-- Iteration : 1E+5 --
106float(100000)
107
108-- Iteration : .5e+7 --
109float(5000000)
110
111-- Iteration : -.5e+7 --
112float(-5000000)
113
114*** Testing doubleval() with valid float values ***
115
116-- Iteration : 0.0 --
117float(0)
118
119-- Iteration : 1.0 --
120float(1)
121
122-- Iteration : -1.0 --
123float(-1)
124
125-- Iteration : 1.234 --
126float(1.234)
127
128-- Iteration : -1.234 --
129float(-1.234)
130
131-- Iteration : 1.2e3 --
132float(1200)
133
134-- Iteration : -1.2e3 --
135float(-1200)
136
137-- Iteration : 10.0000000000000000005 --
138float(10)
139
140-- Iteration : 10.5e+5 --
141float(1050000)
142
143-- Iteration : 1e5 --
144float(1.0E-5)
145
146-- Iteration : -1e5 --
147float(-100000)
148
149-- Iteration : -1e-1 --
150float(-0.1)
151
152-- Iteration : 1e+5 --
153float(100000)
154
155-- Iteration : -1e+5 --
156float(-100000)
157
158-- Iteration : 1E5 --
159float(100000)
160
161-- Iteration : -1E5 --
162float(-100000)
163
164-- Iteration : 1E+5 --
165float(100000)
166
167-- Iteration : .5e+7 --
168float(5000000)
169
170-- Iteration : -.5e+7 --
171float(-5000000)
172===DONE===
173