이 작동 :PHP에서 개인 정적 콜백을 사용하는 것이 유효합니까?
class MyClass {
private static $data = array('banana', 'cherry', 'apple');
private static function sort_by_text($first, $second) {
return strcasecmp($first, $second);
}
public static function sorted_data() {
usort(self::$data, array(__CLASS__, 'sort_by_text'));
return self::$data;
}
}
print_r(MyClass::sorted_data());
// Array ([0] => apple [1] => banana [2] => cherry)
그러나, PHP docs 항상 public
콜백을 사용합니다.
콜백이 private
일 수 있다는 사실이 문서화되지 않았습니까? 아니면 private
으로 만들면 문제가 발생할 수 있습니까?
당신이 전화 때문에 고정되고 내부 클래스에서 개인 메서드 그래서 그것의 허용되지 않습니다? – DevZer0
@ DevZer0 :하지만 클래스를 호출하는 메서드가 아닙니다. 그것은''usort''입니다. – Ashe