1. PHP / Говнокод #2123

    +164.6

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    function Parser($html,$safelevel=1,$censored=false,$typo=true,$crop=0)
    {
    /* v2
        # 17/10/01
        
        html        обезапасиваемая строка
        safelevel   указывает разрешенные теги:       0 = все разрешены
                                                      1 = B,I,U,FONT,P,DIV,CENTER,IMG,A,SPAN,TABLE,TD,TR,INPUT,FORM,TEXTAREA,SCRIPT
                                                      2 = B,I,U,FONT,P,DIV,CENTER,IMG,A,SPAN,TABLE,TD,TR
                                                      3 = B,I,U,FONT,P,DIV,CENTER,IMG,A,SPAN
                                                      4 = B,I,U,FONT,CENTER,IMG,A
                                                      5 = B,I,U,IMG,A
                                                      6 = B,I,U,IMG
                                                      7 = B,I,U,A
                                                      8 = IMG,A
                                                      9 = B,I,A
                                                     10 = I,A
                                                     11 = A
                                                     12 = никакие
                                               "STRING" = указать самому (в формате <a><b><c>)
        censored    пропускать-ли через цензор
        typo        пропускать-ли через сраный типограф
    */  
    
        # обезопасиваем
        switch ($safelevel)
        {
            case 0: $return =       $html; break;
            case 1: $return =       strip_tags($html,"<b><i><u><font><p><div><center><img><a><span><table><td><tr><input><form><textarea><script>"); break;
            case 2: $return =       strip_tags($html,"<b><i><u><font><p><div><center><img><a><span><table><td><tr>"); break;
            case 3: $return =       strip_tags($html,"<b><i><u><font><p><div><center><img><a><span>"); break;
            case 4: $return =       strip_tags($html,"<b><i><u><font><center><img><a>"); break;
            case 5: $return =       strip_tags($html,"<b><i><u><img><a>"); break;
            case 6: $return =       strip_tags($html,"<b><i><u><img>"); break;
            case 7: $return =       strip_tags($html,"<b><i><u><a>"); break;
            case 8: $return =       strip_tags($html,"<img><a>"); break;
            case 9: $return =       strip_tags($html,"<b><i><a>"); break;
            case 10: $return =      strip_tags($html,"<i><a>"); break;
            case 11: $return =      strip_tags($html,"<a>"); break;
            case 12: $return =      strip_tags($html); break;
            default: $return=addslashes($return); break;
        }
        
        
        
        # если censored=true, то цензорим все, сносим хуи и пёзды.
         # upd: к сожалению, цензор, спизженый где-то в сети, оказался корявым и мы временно будем читать мат.
        if ($censored==false)
        {
            $return=str_replace("!!!!!!!!!!","! я идиот, убейте меня кто нибудь !",$return);
            $return=str_replace("))))))))))","! я идиот, убейте меня кто нибудь !",$return);
        }
        
        # если typo=true то обрабатываем сраным типографом
        if ($typo==true)
        {
            $typog = new Typographus();
            $return = $typog->process($return);
        }
    
         if ($crop!=0)
         {
              $return = CropString($crop,$return);
         }
    
        return $return;
    }

    Запостил: getrix, 11 Ноября 2009

    Комментарии (8) RSS

    Добавить комментарий