クラス内部での自ソート定義

クラス内部で、usortにどうやって自ソートメソッドを渡すのか。

<?php
$a = array(
    array(A, 3),
    array(B, 2),
    array(C, 1),
);

class A {
    function A($a) {
        usort($a, array($this, "by_number"));
        reset($a);
        print_r($a);
    }
    function by_number($a, $b) {
        return $a[1] < $b[1] ? -1 : ($a[1] > $b[1] ? 1 : 0);
    }
}

$aa = new A($a);
?>

というように、

        usort($a, array($this, "by_number"));

$thisが鍵。ちなみにクラス外で使う場合は、

usort($a, array("A", "by_number"));

とクラス名を指定する。