- var_dump: documentation ( source)
- explode: documentation ( source)
<?php
function callable_equals(callable $a, callable $b){
$f = function(callable $callable){
if(is_string($callable)){
if(count($pieces = explode("::", $callable)) == 2){
return [$pieces[0], $pieces[1]];
}
}
return $callable;
};
$a = $f($a);
$b = $f($b);
return $a === $b;
}
class Foo{static function bar(){}}
var_dump(callable_equals(
['Foo', 'bar'],
'foo::bar'
));