У меня есть вопрос, я не четко понимать, что Затворы использует на объектно-ориентированном программировании, но я сделал что-то вроде этого:Как использовать закрытие как анонимную функцию, например, на Javascript?
<?php /** * */
class Xsample {
public static $name;
public static $address = array("Mandaluyong", "City");
public static function setName ($name) {
self::$name = $name;
}
public static function getName() {
echo self::$name;
}
public static function sub ($func) {
return call_user_func_array($func, self::$address);
}
}
Xsample::setName("Eric");
Xsample::sub(function ($address) {
echo $address;
});
?>
и эха «Мандалуонга». Я ожидаю, что он вернет массив из Xsample :: $ address, но это не так. Может ли кто-нибудь объяснить это мне?
Обратите внимание на разницу между call_user_func и call_user_func_array. похоже, что вы ожидаете поведения call_user_func – goat