我试图根据数字来声明一个变量.
我试图做“如果$var小于[金额]并且大于[金额] var = blah elseif $var小于[金额]并且大于[金额] var = blah”等.这是我的代码:
$randomNumber = rand(1,$funnyPicsHigh); if($randomNumber > 0 && $randomNumber < 2001){ $directory_to_use = 1; }elseif($randomNumber > 2000 && $randomNumber < 4001){ $directory_to_use = 2; }elseif($randomNumber > 4000 && $randomNumber < 6001){ $directory_to_use = 3; }elseif($randomNumber > 6000 && $randomNumber < 8001){ $directory_to_use = 4; }elseif($randomNumber > 8000 && $randomNumber < 10001){ $directory_to_use = 5; }elseif($randomNumber > 10000 && $randomNumber < 12001){ $directory_to_use = 6; }elseif($randomNumber > 10000 && $randomNumber < 12001){ $directory_to_use = 7; }elseif($randomNumber > 12000 && $randomNumber < 14001){ $directory_to_use = 8; }elseif($randomNumber > 14000 && $randomNumber < 16001){ $directory_to_use = 9; }elseif($randomNumber > 16000 && $randomNumber < 18001){ $directory_to_use = 10; }elseif($randomNumber > 18000 && $randomNumber < 20001){ $directory_to_use = 11; }
我开始使用if then elseif用于所有内容,然后我更改它,因为它是> =和< =,仍然无法工作,然后我尝试在我的数字之前和之后放置“”,这是你现在看到的,仍然没用. 随机数执行得很好,但它似乎选择一个随机目录.我将刷新页面,并为要使用的目录选择5.我再次刷新它,它选择1,然后选择1,然后选择3.它似乎只是随机选择一个数字. 我究竟做错了什么? 把它弄出来,谢谢大家.这是由于我的逻辑而不是提供的代码.大声说话试图解释我的问题是什么帮助我,所以谢谢.如果想知道工作代码是什么,它就在这里:
http://pastebin.com/en2sc3HC
解决方法
您的代码可以大大简化
$directory_to_use = ceil(rand(1,$funnyPicsHigh) / 2000);
如果这是一个错字
}elseif($randomNumber > 10000 && $randomNumber < 12001){ $directory_to_use = 6; }elseif($randomNumber > 10000 && $randomNumber < 12001){ $directory_to_use = 7;