in_arra() serve per vedere se il valore passato e' presente in una chiave di array. Non fa il confronto fra stringhe. Se non error per funzionare nel tuo caso, dovresti trovare tutta la stringa in un chiave dell array.

edit :
così ad esempio funziona:
Codice PHP:

$string
="pere come siete belle"// ok
//$string="le pere sono buonissime"; //no

$bad= array("pere come siete belle""pere""banane");

if (
in_array($string$bad)) {print "ok";} else{print "no";} 
invertendo comunque il controllo ;