私は連想配列として次のデータを持っています
array
'abc' =>
array
'label' => string 'abc' (length=3)
'weight' => float 3
'wsx' =>
array
'label' => string 'wsx' (length=3)
'weight' => float 1
'qay' =>
array
'label' => string 'qay' (length=3)
'weight' => float 1
'http://test.com' =>
array
'label' => string 'http://test.com' (length=15)
'weight' => float 0
'Nasi1' =>
array
'label' => string 'Nasi1' (length=5)
'weight' => float 0
'fax' =>
array
'label' => string 'fax' (length=3)
'weight' => float 4
「ラベル」または「重み」を使用して配列をソートしたい
ラベルの比較関数は次のとおりです。
function compare_label($a, $b)
{
return strnatcmp($a['label'], $b['label']);
}
そして、私は別の関数から関数を呼び出すだけです:
usort($label, 'compare_label');
var_dump($label);
しかし、エラーメッセージが表示され、配列がソートされていません。私は何を間違っているのかわかりません。私は交換しようとしました:
usort($label, 'compare_label');
とusort($label, compare_label);
usort($label, 'compare_label');
とusort($label, $this->compare_label);
成功せずに。誰かが私にヒントを与えることができますか?