<?php
$tytul = " ALA MA DUŻEGO KOTA O IMIENIU SPAM i małego psa";
echo 'Zmienna zawiera ' . ( strlen( $tytul ) - $count ) . ' dużych liter, co stanowi ' . round( 100
- $percent, 1 ) . '% całości.';
?>
Teraz tylko zostaje ci wyznaczyć jakieś rozsądne granice, np. jeśli 70% znaków to duże litery, to nie przepuszczaj tekstu.
Warto też przedtem wywalić białe znaki, cyfry i znaki interpunkcyjne z tekstu, oraz dodatkowo sprawdzać jego długość (jeśli tytuł ma 3 znaki i są to w 100% duże litery, to może to być jakiś skrót, np. "NBP" ).
Ogólnie to zamiast blokowania radziłbym napisać skrypt, który poinformuje jakiegoś człowieka (moderatora, administratora) o podejrzeniu złamania regulaminu.
Uważaj na kodowanie UTF-8 - może zaburzyć wartość procentową. Sprawdź też, czy kod ten będzie wydajny przy długich tekstach.