summaryrefslogtreecommitdiff
path: root/Zend/tests/settype_double.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/tests/settype_double.phpt')
-rw-r--r--Zend/tests/settype_double.phpt57
1 files changed, 57 insertions, 0 deletions
diff --git a/Zend/tests/settype_double.phpt b/Zend/tests/settype_double.phpt
new file mode 100644
index 0000000..ed63f8a
--- /dev/null
+++ b/Zend/tests/settype_double.phpt
@@ -0,0 +1,57 @@
+--TEST--
+casting different variables to double using settype()
+--INI--
+precision=14
+--FILE--
+<?php
+
+$r = fopen(__FILE__, "r");
+
+class test {
+ function __toString() {
+ return "10";
+ }
+}
+
+$o = new test;
+
+$vars = array(
+ "string",
+ "8754456",
+ "",
+ "\0",
+ 9876545,
+ 0.10,
+ array(),
+ array(1,2,3),
+ false,
+ true,
+ NULL,
+ $r,
+ $o
+);
+
+foreach ($vars as $var) {
+ settype($var, "double");
+ var_dump($var);
+}
+
+echo "Done\n";
+?>
+--EXPECTF--
+float(0)
+float(8754456)
+float(0)
+float(0)
+float(9876545)
+float(0.1)
+float(0)
+float(1)
+float(0)
+float(1)
+float(0)
+float(%d)
+
+Notice: Object of class test could not be converted to double in %s on line %d
+float(1)
+Done