2016-07-06 1 views
2

私は、2番目のパラメータ(ソート関数)を好きではないという問題があります。私はこれがクラスで問題であることについて多くの質問を見てきました。その答えは配列を渡すことですarray($this, functionName) しかし私の場合、これは動作しません。このスクリプトは、クラスではありませんが、私はこのエラーを取得しています:PHP usort()は、パラメータ2がクラスではなく有効なコールバックであることを期待しています

PHP Warning: usort() expects parameter 2 to be a valid callback, function 'cmp' not found or invalid function name in <filename.php> 

だから、発見されていない二番目のパラメータ、関数名、の問題は何ですか?これは、PHP Webサイトのコード例です。

答えて

4

コードがクラスに含まれていないが、名前空間を使用している場合、usortは2番目のパラメータにその名前空間を定義することを想定しています。しかし、クラス内でusortを使うのと似たスタイルの配列ではありません。

usort($arrayToSort, 'My\Full\Namespace\cmp'); 
+2

それはQ&投稿のフォーマットです:「CMP」はソート関数である

これは、私のために働きました。問題があり、解決策が見つかった場合は、Q&A形式で投稿することができます。 – Deltaxfx

+0

@AndréFerraz[this](http://stackoverflow.com/help/self-answer) –

関連する問題