Arkadaşlar if ile switch case arasındaki farkı öğrenmek için aşağıdaki kodu yazdım.

<!DOCTYPE html>
<!DOCTYPE html>
<html>
<head>
    <title>Koşul</title>
</head>
<body>
<div align="center">
    <h2>IF Statement</h2>
    <form method="POST" action="">
        <br><br>
        <input type="text" name="sayı" placeholder="Sayıyı giriniz." size="25" /><br><br>
        <button type="submit">Hesapla</button>
    </form>
</div>
<?php
if ($_POST)
{
    $aa=$_POST["sayı"];
    /*
    if ($aa<10) {
        echo "Sayı, 10'dan küçüktür.";
    }
    elseif ($aa<20) {
        echo "Sayı, 20'den küçüktür.";
    }
    elseif ($aa<30) {
        echo "Sayı, 30'dan küçüktür..";
    }
    elseif ($aa<40) {
        echo "Sayı 40'dan küçüktür.";
    }
    else
    {
        echo "Sayı 40'dan büyüktür.";
    }
*/
    switch ($aa) {
        case $aa<10:
            echo "Sayı 10'dan küçüktür.";
            break;
        case $aa<20:
            echo "Sayı 20'den küçüktür.";
            break;
        case $aa<30:
            echo "Sayı 30'dan küçüktür.";
        case $aa<40:
            echo "Sayı 40'dan küçüktür.";
        default:
            echo "Sayı 40'dan büyüktür.";
            break;
    }
}
?>
</body>
</html>

Burda 25 yazdığımda sayı 30'dan küçüktür yazması gerekiyor. Fakat bende
Sayı 30'dan küçüktür.Sayı 40'dan küçüktür.Sayı 40'dan büyüktür.
olarak çıkıyor

Nerde hata yapıyorum ?