diff options
Diffstat (limited to 'Zend/tests/compare_002.phpt')
-rw-r--r-- | Zend/tests/compare_002.phpt | 341 |
1 files changed, 341 insertions, 0 deletions
diff --git a/Zend/tests/compare_002.phpt b/Zend/tests/compare_002.phpt new file mode 100644 index 0000000..5e5009c --- /dev/null +++ b/Zend/tests/compare_002.phpt @@ -0,0 +1,341 @@ +--TEST-- +comparing different variables for identity +--SKIPIF-- +<?php if (PHP_INT_SIZE != 4) die("skip this test is for 32bit platform only"); ?> +--FILE-- +<?php + +class test { +} + +$a = array( + array(1,2,3), + "", + 1, + 2.5, + 0, + "string", + "123", + "2.5", + NULL, + true, + false, + new stdclass, + new stdclass, + new test, + array(), + -PHP_INT_MAX-1, + (string)(-PHP_INT_MAX-1), +); + +$var_cnt = count($a); + +function my_dump($var) { + ob_start(); + var_dump($var); + $buf = ob_get_clean(); + echo str_replace("\n", "", $buf); +} + +foreach($a as $var) { + for ($i = 0; $i < $var_cnt; $i++) { + my_dump($var); + echo ($var === $a[$i]) ? " === " : " !== "; + my_dump($a[$i]); + echo "\n"; + } +} + +echo "Done\n"; +?> +--EXPECTF-- +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} === array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== string(0) "" +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== int(1) +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== float(2.5) +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== int(0) +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== string(6) "string" +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== string(3) "123" +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== string(3) "2.5" +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== NULL +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== bool(true) +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== bool(false) +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== object(stdClass)#1 (0) {} +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== object(stdClass)#2 (0) {} +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== object(test)#3 (0) {} +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== array(0) {} +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== int(-2147483648) +array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} !== string(11) "-2147483648" +string(0) "" !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +string(0) "" === string(0) "" +string(0) "" !== int(1) +string(0) "" !== float(2.5) +string(0) "" !== int(0) +string(0) "" !== string(6) "string" +string(0) "" !== string(3) "123" +string(0) "" !== string(3) "2.5" +string(0) "" !== NULL +string(0) "" !== bool(true) +string(0) "" !== bool(false) +string(0) "" !== object(stdClass)#1 (0) {} +string(0) "" !== object(stdClass)#2 (0) {} +string(0) "" !== object(test)#3 (0) {} +string(0) "" !== array(0) {} +string(0) "" !== int(-2147483648) +string(0) "" !== string(11) "-2147483648" +int(1) !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +int(1) !== string(0) "" +int(1) === int(1) +int(1) !== float(2.5) +int(1) !== int(0) +int(1) !== string(6) "string" +int(1) !== string(3) "123" +int(1) !== string(3) "2.5" +int(1) !== NULL +int(1) !== bool(true) +int(1) !== bool(false) +int(1) !== object(stdClass)#1 (0) {} +int(1) !== object(stdClass)#2 (0) {} +int(1) !== object(test)#3 (0) {} +int(1) !== array(0) {} +int(1) !== int(-2147483648) +int(1) !== string(11) "-2147483648" +float(2.5) !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +float(2.5) !== string(0) "" +float(2.5) !== int(1) +float(2.5) === float(2.5) +float(2.5) !== int(0) +float(2.5) !== string(6) "string" +float(2.5) !== string(3) "123" +float(2.5) !== string(3) "2.5" +float(2.5) !== NULL +float(2.5) !== bool(true) +float(2.5) !== bool(false) +float(2.5) !== object(stdClass)#1 (0) {} +float(2.5) !== object(stdClass)#2 (0) {} +float(2.5) !== object(test)#3 (0) {} +float(2.5) !== array(0) {} +float(2.5) !== int(-2147483648) +float(2.5) !== string(11) "-2147483648" +int(0) !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +int(0) !== string(0) "" +int(0) !== int(1) +int(0) !== float(2.5) +int(0) === int(0) +int(0) !== string(6) "string" +int(0) !== string(3) "123" +int(0) !== string(3) "2.5" +int(0) !== NULL +int(0) !== bool(true) +int(0) !== bool(false) +int(0) !== object(stdClass)#1 (0) {} +int(0) !== object(stdClass)#2 (0) {} +int(0) !== object(test)#3 (0) {} +int(0) !== array(0) {} +int(0) !== int(-2147483648) +int(0) !== string(11) "-2147483648" +string(6) "string" !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +string(6) "string" !== string(0) "" +string(6) "string" !== int(1) +string(6) "string" !== float(2.5) +string(6) "string" !== int(0) +string(6) "string" === string(6) "string" +string(6) "string" !== string(3) "123" +string(6) "string" !== string(3) "2.5" +string(6) "string" !== NULL +string(6) "string" !== bool(true) +string(6) "string" !== bool(false) +string(6) "string" !== object(stdClass)#1 (0) {} +string(6) "string" !== object(stdClass)#2 (0) {} +string(6) "string" !== object(test)#3 (0) {} +string(6) "string" !== array(0) {} +string(6) "string" !== int(-2147483648) +string(6) "string" !== string(11) "-2147483648" +string(3) "123" !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +string(3) "123" !== string(0) "" +string(3) "123" !== int(1) +string(3) "123" !== float(2.5) +string(3) "123" !== int(0) +string(3) "123" !== string(6) "string" +string(3) "123" === string(3) "123" +string(3) "123" !== string(3) "2.5" +string(3) "123" !== NULL +string(3) "123" !== bool(true) +string(3) "123" !== bool(false) +string(3) "123" !== object(stdClass)#1 (0) {} +string(3) "123" !== object(stdClass)#2 (0) {} +string(3) "123" !== object(test)#3 (0) {} +string(3) "123" !== array(0) {} +string(3) "123" !== int(-2147483648) +string(3) "123" !== string(11) "-2147483648" +string(3) "2.5" !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +string(3) "2.5" !== string(0) "" +string(3) "2.5" !== int(1) +string(3) "2.5" !== float(2.5) +string(3) "2.5" !== int(0) +string(3) "2.5" !== string(6) "string" +string(3) "2.5" !== string(3) "123" +string(3) "2.5" === string(3) "2.5" +string(3) "2.5" !== NULL +string(3) "2.5" !== bool(true) +string(3) "2.5" !== bool(false) +string(3) "2.5" !== object(stdClass)#1 (0) {} +string(3) "2.5" !== object(stdClass)#2 (0) {} +string(3) "2.5" !== object(test)#3 (0) {} +string(3) "2.5" !== array(0) {} +string(3) "2.5" !== int(-2147483648) +string(3) "2.5" !== string(11) "-2147483648" +NULL !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +NULL !== string(0) "" +NULL !== int(1) +NULL !== float(2.5) +NULL !== int(0) +NULL !== string(6) "string" +NULL !== string(3) "123" +NULL !== string(3) "2.5" +NULL === NULL +NULL !== bool(true) +NULL !== bool(false) +NULL !== object(stdClass)#1 (0) {} +NULL !== object(stdClass)#2 (0) {} +NULL !== object(test)#3 (0) {} +NULL !== array(0) {} +NULL !== int(-2147483648) +NULL !== string(11) "-2147483648" +bool(true) !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +bool(true) !== string(0) "" +bool(true) !== int(1) +bool(true) !== float(2.5) +bool(true) !== int(0) +bool(true) !== string(6) "string" +bool(true) !== string(3) "123" +bool(true) !== string(3) "2.5" +bool(true) !== NULL +bool(true) === bool(true) +bool(true) !== bool(false) +bool(true) !== object(stdClass)#1 (0) {} +bool(true) !== object(stdClass)#2 (0) {} +bool(true) !== object(test)#3 (0) {} +bool(true) !== array(0) {} +bool(true) !== int(-2147483648) +bool(true) !== string(11) "-2147483648" +bool(false) !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +bool(false) !== string(0) "" +bool(false) !== int(1) +bool(false) !== float(2.5) +bool(false) !== int(0) +bool(false) !== string(6) "string" +bool(false) !== string(3) "123" +bool(false) !== string(3) "2.5" +bool(false) !== NULL +bool(false) !== bool(true) +bool(false) === bool(false) +bool(false) !== object(stdClass)#1 (0) {} +bool(false) !== object(stdClass)#2 (0) {} +bool(false) !== object(test)#3 (0) {} +bool(false) !== array(0) {} +bool(false) !== int(-2147483648) +bool(false) !== string(11) "-2147483648" +object(stdClass)#1 (0) {} !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +object(stdClass)#1 (0) {} !== string(0) "" +object(stdClass)#1 (0) {} !== int(1) +object(stdClass)#1 (0) {} !== float(2.5) +object(stdClass)#1 (0) {} !== int(0) +object(stdClass)#1 (0) {} !== string(6) "string" +object(stdClass)#1 (0) {} !== string(3) "123" +object(stdClass)#1 (0) {} !== string(3) "2.5" +object(stdClass)#1 (0) {} !== NULL +object(stdClass)#1 (0) {} !== bool(true) +object(stdClass)#1 (0) {} !== bool(false) +object(stdClass)#1 (0) {} === object(stdClass)#1 (0) {} +object(stdClass)#1 (0) {} !== object(stdClass)#2 (0) {} +object(stdClass)#1 (0) {} !== object(test)#3 (0) {} +object(stdClass)#1 (0) {} !== array(0) {} +object(stdClass)#1 (0) {} !== int(-2147483648) +object(stdClass)#1 (0) {} !== string(11) "-2147483648" +object(stdClass)#2 (0) {} !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +object(stdClass)#2 (0) {} !== string(0) "" +object(stdClass)#2 (0) {} !== int(1) +object(stdClass)#2 (0) {} !== float(2.5) +object(stdClass)#2 (0) {} !== int(0) +object(stdClass)#2 (0) {} !== string(6) "string" +object(stdClass)#2 (0) {} !== string(3) "123" +object(stdClass)#2 (0) {} !== string(3) "2.5" +object(stdClass)#2 (0) {} !== NULL +object(stdClass)#2 (0) {} !== bool(true) +object(stdClass)#2 (0) {} !== bool(false) +object(stdClass)#2 (0) {} !== object(stdClass)#1 (0) {} +object(stdClass)#2 (0) {} === object(stdClass)#2 (0) {} +object(stdClass)#2 (0) {} !== object(test)#3 (0) {} +object(stdClass)#2 (0) {} !== array(0) {} +object(stdClass)#2 (0) {} !== int(-2147483648) +object(stdClass)#2 (0) {} !== string(11) "-2147483648" +object(test)#3 (0) {} !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +object(test)#3 (0) {} !== string(0) "" +object(test)#3 (0) {} !== int(1) +object(test)#3 (0) {} !== float(2.5) +object(test)#3 (0) {} !== int(0) +object(test)#3 (0) {} !== string(6) "string" +object(test)#3 (0) {} !== string(3) "123" +object(test)#3 (0) {} !== string(3) "2.5" +object(test)#3 (0) {} !== NULL +object(test)#3 (0) {} !== bool(true) +object(test)#3 (0) {} !== bool(false) +object(test)#3 (0) {} !== object(stdClass)#1 (0) {} +object(test)#3 (0) {} !== object(stdClass)#2 (0) {} +object(test)#3 (0) {} === object(test)#3 (0) {} +object(test)#3 (0) {} !== array(0) {} +object(test)#3 (0) {} !== int(-2147483648) +object(test)#3 (0) {} !== string(11) "-2147483648" +array(0) {} !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +array(0) {} !== string(0) "" +array(0) {} !== int(1) +array(0) {} !== float(2.5) +array(0) {} !== int(0) +array(0) {} !== string(6) "string" +array(0) {} !== string(3) "123" +array(0) {} !== string(3) "2.5" +array(0) {} !== NULL +array(0) {} !== bool(true) +array(0) {} !== bool(false) +array(0) {} !== object(stdClass)#1 (0) {} +array(0) {} !== object(stdClass)#2 (0) {} +array(0) {} !== object(test)#3 (0) {} +array(0) {} === array(0) {} +array(0) {} !== int(-2147483648) +array(0) {} !== string(11) "-2147483648" +int(-2147483648) !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +int(-2147483648) !== string(0) "" +int(-2147483648) !== int(1) +int(-2147483648) !== float(2.5) +int(-2147483648) !== int(0) +int(-2147483648) !== string(6) "string" +int(-2147483648) !== string(3) "123" +int(-2147483648) !== string(3) "2.5" +int(-2147483648) !== NULL +int(-2147483648) !== bool(true) +int(-2147483648) !== bool(false) +int(-2147483648) !== object(stdClass)#1 (0) {} +int(-2147483648) !== object(stdClass)#2 (0) {} +int(-2147483648) !== object(test)#3 (0) {} +int(-2147483648) !== array(0) {} +int(-2147483648) === int(-2147483648) +int(-2147483648) !== string(11) "-2147483648" +string(11) "-2147483648" !== array(3) { [0]=> int(1) [1]=> int(2) [2]=> int(3)} +string(11) "-2147483648" !== string(0) "" +string(11) "-2147483648" !== int(1) +string(11) "-2147483648" !== float(2.5) +string(11) "-2147483648" !== int(0) +string(11) "-2147483648" !== string(6) "string" +string(11) "-2147483648" !== string(3) "123" +string(11) "-2147483648" !== string(3) "2.5" +string(11) "-2147483648" !== NULL +string(11) "-2147483648" !== bool(true) +string(11) "-2147483648" !== bool(false) +string(11) "-2147483648" !== object(stdClass)#1 (0) {} +string(11) "-2147483648" !== object(stdClass)#2 (0) {} +string(11) "-2147483648" !== object(test)#3 (0) {} +string(11) "-2147483648" !== array(0) {} +string(11) "-2147483648" !== int(-2147483648) +string(11) "-2147483648" === string(11) "-2147483648" +Done |