私は自分のコードがどのようにしたいのかを完全に処理していますが、問題は私のコードが最高値から最低値にソートされていることです。最初の10枚を印刷すると、実際には「10枚」(最短の時間を意味する)になるように、逆にすることはできますか?私の配列の並べ替えの比較を逆にする
本当にありがとうございました
function compareStreamDurations($a, $b)
{
if ($a["duration"] == $b["duration"])
{
return 0;
}
return ($a["duration"] > $b["duration"]) ? -1 : 1;
}
usort($onlineStreams, 'compareStreamDurations');
for ($i=0; $i<10; $i++)
{
echo '<p>', $onlineStreams[$i]["duration"] ,'</p>';
}
(符号を反転)の下に掲載のソリューションが動作していません。私はusort関数呼び出しの前と後に$ onlineStreamsのprint_rを実行しています。それらは同じものです。
をアレイのように見える? "duration"キーはすべての配列要素に存在しますか? 「期間」の値は数値ですか? –
"usort関数呼び出しの前と後に$ onlineStreamsのprint_rを実行していますが、どちらも同じですか?"どちらの場合でもソートが機能しないか、 '>'や '<'と比較してもソートの結果は同じであることを意味しますか?ソートが成功したことを確認するために、usortの戻り値をチェックしようとしましたか? –