プロが教える店舗&オフィスのセキュリティ対策術

2次元連想配列の指定項目をソートするのに、uasort()を使いたいのですが、
uasort()で指定する関数に任意の引数は渡せず、固定の項目しかソートできません。

uasort($rensouArray,"comparar");

関数ではなくクラスのメソッドが指定できば引数を渡せなくてもクラスのプロパティで渡せると思いましたが、
以下の書き方ではクラスのメソッドは呼べませんでした。
uasort($rensouArray,$this->$comparar());

http://jp.php.net/manual/ja/function.uasort.php
の注意書きで、関数名の代わりに、オブジェクトへのリファレンスを格納した配列とメソッド名を指定することも出来ます。とありますが、書き方がわからず困っています。

A 回答 (1件)

前の質問のときも思ったんですが


具体的に、どういうデータを、
どういうかたちにしたいか、
例示してくれると、よくわかるんですけど。

>の注意書きで、関数名の代わりに、オブジェクトへのリファレンスを格納した配列と
>メソッド名を指定することも出来ます。とありますが、書き方がわからず困っています。

で、これですが、usort の例3がそうなのでは?

参考URL:http://jp.php.net/manual/ja/function.usort.php
    • good
    • 0
この回答へのお礼

具体例が少なくすみません。
なるべく短く書いた方が呼んでもらえるのかなと思いまして。。つい。。

海外サイトを調べた結果例が無事見つかりました。

uasort($xxArray, array($this, "comparar"));
の書式で記述すれば自クラスのメソッドを呼び出せます。

PHP関数の引数は結構Arrayで渡す場合があるみたいです。

お礼日時:2004/10/29 11:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!