php-src/Zend/tests/compare_005.phpt
2018-10-14 19:45:12 +02:00

390 lines
13 KiB
PHP

--TEST--
comparing different variables (greater or equal than)
--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)
Notice: Object of class stdClass could not be converted to int in %s on line %d
>= object(stdClass)#1 (0) {}
int(1)
Notice: Object of class stdClass could not be converted to int in %s on line %d
>= object(stdClass)#2 (0) {}
int(1)
Notice: Object of class test could not be converted to int in %s on line %d
>= 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)
Notice: Object of class stdClass could not be converted to float in %s on line %d
>= object(stdClass)#1 (0) {}
float(2.5)
Notice: Object of class stdClass could not be converted to float in %s on line %d
>= object(stdClass)#2 (0) {}
float(2.5)
Notice: Object of class test could not be converted to float in %s on line %d
>= 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)
Notice: Object of class stdClass could not be converted to int in %s on line %d
< object(stdClass)#1 (0) {}
int(0)
Notice: Object of class stdClass could not be converted to int in %s on line %d
< object(stdClass)#2 (0) {}
int(0)
Notice: Object of class test could not be converted to int in %s on line %d
< 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) {}
Notice: Object of class stdClass could not be converted to int in %s on line %d
>= int(1)
object(stdClass)#1 (0) {}
Notice: Object of class stdClass could not be converted to float in %s on line %d
< float(2.5)
object(stdClass)#1 (0) {}
Notice: Object of class stdClass could not be converted to int in %s on line %d
>= 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) {}
Notice: Object of class stdClass could not be converted to int in %s on line %d
>= 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) {}
Notice: Object of class stdClass could not be converted to int in %s on line %d
>= int(1)
object(stdClass)#2 (0) {}
Notice: Object of class stdClass could not be converted to float in %s on line %d
< float(2.5)
object(stdClass)#2 (0) {}
Notice: Object of class stdClass could not be converted to int in %s on line %d
>= 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) {}
Notice: Object of class stdClass could not be converted to int in %s on line %d
>= 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) {}
Notice: Object of class test could not be converted to int in %s on line %d
>= int(1)
object(test)#3 (0) {}
Notice: Object of class test could not be converted to float in %s on line %d
< float(2.5)
object(test)#3 (0) {}
Notice: Object of class test could not be converted to int in %s on line %d
>= 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) {}
Notice: Object of class test could not be converted to int in %s on line %d
>= 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)
Notice: Object of class stdClass could not be converted to int in %s on line %d
< object(stdClass)#1 (0) {}
int(-2147483648)
Notice: Object of class stdClass could not be converted to int in %s on line %d
< object(stdClass)#2 (0) {}
int(-2147483648)
Notice: Object of class test could not be converted to int in %s on line %d
< 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