Autor Zpráva
ONdra28
Profil *
Zdravím,

Zkousím udělat si filtr na sprostá slova, prostě aby se sprostá slova v textu přepsala na [cenzurovano] ... no kdyz funkci pouziju na text a je tam jen jedno slovo tak se to "prefiltruje" ovsem pokud jich tam je vic tak se odfiltruje jen to posledni...Budu vdecny za kazdou radu

Kod:
function Over($text) {
 $text = explode(" ",$text);
 $words = Array("sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1");
 
foreach($words as $word) {
    if(in_array($word,$text)) {
    $new_text = str_replace($word,"[cenzurovano]",$text);
    }
   }
   return implode(" ",$new_text);
}   


?>


Diky.
Radek9
Profil
function Over($text) {
$words = Array("sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1","sproste1");
$text = str_replace($words, "[cenzurovano]", $text);
return $text;
}

edit: zapoměl jsem na return :D
ONdra28
Profil *
Radek9

Nechapu.
Mastodont
Profil
ONdra28
Ty si $new_text pokaždé v cyklu přepíšeš, takže je jasné, že se filtruje jen poslední nahrazené slovo.
ONdra28
Profil *
Mastodont

Co s tim teda mam udelat aby se to neprepisovalo ?
Radek9
Profil
ONdra28:
A proč to děláš pomocí cyklu? Jednoduše to udělej s jednou proměnnou, jak jsem ti napsal.
ONdra28
Profil *
Radek9

Zajímavé, nevěřil jsem, že by to mohlo fungovat, ale funguje.

Díky.
Fanos 425
Profil *
[#2] Radku super presne toto jsem potreboval :-) ani jsem nevedel ze str_replace umi tak dobre pracovat s polem :-)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: