Girando tra i vari script del web ho realizzato questo motorino per cercare una parola tra i files txt di una cartella e scrivere i risultati con tre parole avanti e indietro quella richiesta, assieme al link per visualizzarli.

Codice PHP:
$list getNewsList();
foreach (
$list as $value) {
$newsData file("news/".$value);
      
$newsTitle  trim($newsData[0]);
      
$newsContent trim($newsData[1]);
$newsArgument trim($newsData[2]);
 
$newsMercato trim($newsData[3]);
 
$filename trim($newsData[4]);
 unset (
$newsData['0']);
      unset (
$newsData['1']);
         unset (
$newsData['2']);
         unset (
$newsData['3']);
         unset (
$newsData['4']);

         
 
$cercami=strpos($newsContent,$parola);
if (
$cercami === false) {
    echo 
"Nessuna parola trovata";
//    break;
} else {
echo 
"[url='vedinews.php?numero=$filename'] $newsTitle [/url]
"
;
 
$dividiparoleexplode (" ",$newsContent);
$chiave array_search($parola$dividiparole);

$i=$chiave;
$ifin=$chiave+3;
$iiniz=$chiave-3;

while (
$i>$iiniz){
$prima=$dividiparole[$iiniz];
echo 
"$prima ";
$iiniz++;
}

echo 
"[b]$parola[/b] ";

while (
$i<$ifin){
$dopo=$dividiparole[$i+1];
echo 
"$dopo ";
$i++;
}
//break;
}

Funziona, ma il mio problema sono i break (messi come commenti). Mi spiego con un esempio.
Mettiamo io abbia 2 files di testo: 1.txt con la parole "aria" e 2.txt con la parola "acqua", e voglio cercare qual'è quello con "acqua".
Se ci sono i break lui legge il primo file (in cui non c'è), dice che non l'ha trovato e si ferma.
Se NON ci sono legge il primo, dice non l'ha trovato e poi continua, così mi trovo anche la scritta "Nessuna parola trovata" assieme ai risultati.

Invertendo il true e false dell'if, per qualche motivo non mi funziona.


Cosa posso fare?