私は、ビデオストリームを基本的にプルするページを作成しようとしており、ビュー数が最も多いページをページの先頭に配置しています。同一のケースのスイッチ
私はPHPをかなり新しくしています。私が行ったやり方は非常に非効率的で長いですが、主なことはネストされたスイッチを使用することです。
すべての動画の視聴者数が0を超えると、これは完璧に機能します。2つの動画の視聴者数が同じ場合、問題が発生します。これが起こると、すべてのストリームは元の順序を保持します。
ここでは、問題の原因となっているコード部分を削除しています。
$viewarray = array($viewers1, $viewers2, $viewers3, $viewers4);
rsort($viewarray, SORT_NUMERIC);
for ($z=0; $z<=3; $z++)
{
if ($viewarray[$z] == 0) {break;}
switch($viewarray[$z])
{
case $viewers1:
switch($z)
{
case 0:
//code which implements the re-ordering
case 1:
case 2:
case 3:
}
break;
case $viewers2:
switch($z)
{
case 0:
case 1:
case 2:
case 3:
}
break;
case $viewers3:
switch($z)
{
case 0:
case 1:
case 2:
case 3:
}
break;
case $viewers4:
switch($z)
{
case 0:
case 1:
case 2:
case 3:
}
break;
}
}
$viewarray
それが正しい順序で視聴番号のリストを作成するようにソートされます。スイッチは、各ストリームの実際の視聴者数と照合して、一致するものを探します。
私はスイッチの引数が2つのケースにマッチした場合、最初のものを選ぶだけで悲しいことではないと思いました。 if文で置き換えようとしましたが、同じことが起こります。
ご協力いただければ幸いです。
私はこれを将来もっと効率的にしようとするかもしれませんが、今はただのPHPに固執します。 –