if($number <= 300 || $number > 840 || (($number-1) % 100) >= 40) {
echo "Number was not in ranges!";
}
Bu sayısına bölünmesi sırasında kalanı verir %
(modül) operatörü yararlanır - böylece kalan Modulo 100 1-40 olduğunu numaralarını isteyen konum beri, sadece almak, bir çıkartın o 100 modulo, ve o 40 + ise (1-40 şimdi 0-39 olduğu) sonra göreceksiniz.
Bu yaklaşım sürece aralıkları o dizi kalıbı olarak izleyin, güzel ve özlü. Eğer bireysel aralıkları daha fazla özelleştirme ihtiyacınız varsa, bir switch
deyimi (bu bir örnek için answer from "too much php" bakınız) kullanın.