TypePHP 编译器 https://swoole.com/aot/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

55 lines
1.4 KiB

--TEST--
Test array_multisort() function : usage variation - test sort order of all types
--SKIPIF--
<?php
if (true) die("skip AOT does not support undefined variables");
?>
--FILE--
<?php
// define some classes
class classWithToString
{
public function __toString(): string {
return "Class A object";
}
}
class classWithoutToString
{
}
function main()
{
echo "*** Testing array_multisort() : usage variation - test sort order of all types***\n";
$inputs = array('int 0' => 0, 'float -10.5' => -10.5, array(), 'uppercase NULL' => NULL, 'lowercase true' => true, 'empty string DQ' => "", 'string DQ' => "string", 'instance of classWithToString' => new classWithToString(), 'instance of classWithoutToString' => new classWithoutToString(), 'undefined var' => @$undefined_var);
var_dump(array_multisort($inputs));
var_dump($inputs);
}
?>
--EXPECT--
*** Testing array_multisort() : usage variation - test sort order of all types***
bool(true)
array(10) {
["float -10.5"]=>
float(-10.5)
["int 0"]=>
int(0)
[0]=>
array(0) {
}
["uppercase NULL"]=>
NULL
["empty string DQ"]=>
string(0) ""
["undefined var"]=>
NULL
["lowercase true"]=>
bool(true)
["instance of classWithToString"]=>
object(classWithToString)#1 (0) {
}
["string DQ"]=>
string(6) "string"
["instance of classWithoutToString"]=>
object(classWithoutToString)#2 (0) {
}
}