<?php
function wtf(array $arrayUnderTest) {
echo is_callable($test) ? 'This is a callable' : 'This is not a callable';
echo "\n";
echo is_array($test) ? 'This is an array' : 'This is not an array';
$test();
}
class x {
function foo() {
print "\nfoo";
}
}
$x = new x();
$test = array($x, "foo");
wtf($test);
Warning: Undefined variable $test in /in/giKvE on line 4
This is not a callable
Warning: Undefined variable $test in /in/giKvE on line 6
This is not an array
Warning: Undefined variable $test in /in/giKvE on line 7
Fatal error: Uncaught Error: Value of type null is not callable in /in/giKvE:7
Stack trace:
#0 /in/giKvE(19): wtf(Array)
#1 {main}
thrown in /in/giKvE on line 7
Process exited with code 255.
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0
Warning: Undefined variable $test in /in/giKvE on line 4
This is not a callable
Warning: Undefined variable $test in /in/giKvE on line 6
This is not an array
Warning: Undefined variable $test in /in/giKvE on line 7
Fatal error: Uncaught Error: Value of type null is not callable in /in/giKvE:7
Stack trace:
#0 /in/giKvE(19): wtf(Array)
#1 {main}
thrown in /in/giKvE on line 7
Process exited with code 255.
Notice: Undefined variable: test in /in/giKvE on line 4
This is not a callable
Notice: Undefined variable: test in /in/giKvE on line 6
This is not an array
Notice: Undefined variable: test in /in/giKvE on line 7
Fatal error: Uncaught Error: Function name must be a string in /in/giKvE:7
Stack trace:
#0 /in/giKvE(19): wtf(Array)
#1 {main}
thrown in /in/giKvE on line 7
Process exited with code 255.
Output for 7.3.32 - 7.3.33
This is not a callable
This is not an array
Fatal error: Uncaught Error: Function name must be a string in /in/giKvE:7
Stack trace:
#0 /in/giKvE(19): wtf(Array)
#1 {main}
thrown in /in/giKvE on line 7
Process exited with code 255.
Notice: Undefined variable: test in /in/giKvE on line 4
This is not a callable
Notice: Undefined variable: test in /in/giKvE on line 6
This is not an array
Notice: Undefined variable: test in /in/giKvE on line 7
Fatal error: Function name must be a string in /in/giKvE on line 7
Process exited with code 255.