あなたの人生に効く作品がみつかる手書きのカード♪>>

php初心者です。

<?php

$gacha = array(
'C' => '20',
   'UC' => '40',
'R' => '60',//10回目はR以上
'SR' => '80',//4回目は必ずSR
'UR' => '100'//20回目は必ずUR
);

for ($i = 1; $i <= 20; ++$i) {
$hit = rand(1,100);
if ($i == 4) {
echo 'SR<br>';

}elseif($i == 10){//10回目はR以上(R・SR・UR).この段落内だけ編集して下さい。
$hit = rand(1,100);
foreach ($gacha as $rarity => $val){
if ($hit <= $val){
echo $rarity.'<br>';
break;

}elseif ($i == 20){

echo 'UR<br>';

}else{
$hit = rand(1,100);
foreach ($gacha as $rarity => $val){
if ($hit <= $val) {
echo $rarity.'<br>';
break;
}
}
}
}
}
}

4回目・20回目とそれ以外の場合はうまく動くようになったのですが、10回目の時だけR以上が出せるコードが分からず困っています。

コメントにも書いてますが、1つめのelseif内を少し変えるだけで動くらしいのですが、よく分かりませんでした。


PHPに詳しい方、ご解答していただければ幸いです。よろしくお願いします。

A 回答 (1件)

同じ方でしょうか?



https://teratail.com/questions/123171
    • good
    • 0
この回答へのお礼

違います。
ですが、そのサイトを参考にしたら無事問題解決しました。
ご丁寧にありがとうございました。

お礼日時:2018/05/03 22:05

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング