Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: cenzor
Forum PHP.pl > Forum > PHP
emerte
mam baze w postaci :
  1. <?php
  2.  
  3. $d[1][0]=&#092;"blee\";
  4. $d[1][1]=&#092;"bleeeee\";
  5.  
  6. ?>

i tak dalej
i teraz potrzebuje funkcja ktora sprawdzi czy dany string zawiera ktorys z tych wyrazow, a nastepnie wezmie caly wyraz (tzn jesli mam w bazie "xxxx" to caly wyraz "yxxxxyyyy") i zrobie z niego cos takiego y*******y, tzn zostawi 1 i ostatnia litere, a reszte zamini w jakis znak (np * lub #)
czy da sie cos takiego zrobic? tzn zeby lapal caly ten wyraz, bo zmiana z kupa na k**a to potrafie zrobic.


z gory wielkie dzieki


--------------------
<b>[zmoderowano]</b>
1. Używaj BBCode.
2. Ocenzurowałem (zapoznaj się z regulaminem).
BzikOS
jono
jeżeli kolejne pola bazy zawierają po 1 wyrazie, to banałka:

  1. <?php
  2. function cenz($wyraz){
  3. $zabronione = array('kupa', 'pupa');
  4. foreach($zabronione as $szukane){
  5. if(ereg($szukane, $przeszukiwane)){
  6. return substr($przeszukiwane, 0,1).'**'.substr($przeszukiwane, strlen($przszukiwane)-1, 1)
  7. }
  8. }
  9. return $przeszukiwane;
  10. }
  11. ?>
emerte
nie dokladnie o to chodzilo, mam string np:
"kazdy lubi jezdzic traktorem po polach na wsi ;)"
w bazie slow do szukania mam "ktor" i chce zeby string poczatkowy zmienil sie na "kazdy lubi jezdzic t*******m po polach na wsi ;)" po przemieleniu przez ta funkcje tylko na podstawie tego wyrazu z tablicy "wulgaryzmow"

jesli jest to mozliwe to prosze o pomoc ;)
emerte
nie odpisujecie, wiec pewnie nie wiecie jak to zrobic, ale czy moze mi ktos chociarz powiedziec jak mniej wiecej i czy wogole sie da to wykonac, to poszukam innej pomocy
kicaj
  1. <?php
  2. $slowo[] = &#092;"/zajebisty/i\";
  3. $cenzura[] = &#092;"zaje...\";
  4. $slowo[] = &#092;"/wkurwion/i\";
  5. $cenzura[] = &#092;"wkurw...\";
  6. $slowo[] = &#092;"/wypierdala/i\";
  7. $cenzura[] = &#092;"wypierda...\";
  8.  
  9. $text = preg_replace($slowo, $cenzura, $text);
  10. ?>


Moze to cos pomoze smile.gif
emerte
niestety nie o taki skrypt mi chodzilo, patrz 3 posty w gore
jono
  1. <?php
  2. function cenz($wyraz){ 
  3. $zabronione = array('kupa', 'pupa'); 
  4. foreach($zabronione as $szukane){ 
  5. if(ereg($szukane, $wyraz)){
  6. $return .= substr($wyraz, 0,1);
  7. while($i < strlen($wyraz)-2){
  8. $return .= '*';
  9. $i++;
  10. }
  11. unset($i);
  12. $return .= substr($wyraz, strlen($wyraz)-1, 1);
  13. return $return.' '; 
  14. }
  15. } 
  16. return $wyraz.' ';
  17. } 
  18. function rozbij($text){
  19. $dane = explode(' ', $text);
  20. foreach($dane as $wyraz){
  21. $sprawdzone .= cenz($wyraz);
  22. }
  23. return $sprawdzone;
  24. }
  25.  
  26. echo rozbij('ale kupa kupaga');
  27.  
  28. ?>

uff smile.gif Ale prościej chyba by było wywalać całe wyrazy... Działa sprawdziłem
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.