Новости из мира php

berkut

Новичок
Новости из мира php

читать очень быстро и не вдумчиво.

Под воздействием зелёной зависти к автроу саомй быстрой в мире библеотики SmartDB®©, а тажке под влняиием откыртия,
сделнаного бритинсками учёными® _Я_ Соадзл и реишл потелидся с обвестещнностью(с цеьлю поращобения вселеннеой) сием Твореноьем.
Готов принять в дар от свиох учкниеов и послодевателей "плаигн" к аскье или вылсушать как это монжо к ней притрукить.
PHP:
class UnPendosCrypt
{
    var $text = '';
    
    function UnPendosCrypt($text)
    {
        $this->text = $text;
    }
    function ФАс()
    {
        return preg_replace_callback('#(\W+\w{2})([a-zа-я]+)(\w{2}(?=\W+))#is', array(&$this, '_Call__back'), ' ' . $this->text . ' ');
    }    
    function _Call__back($m)
    {
        $str = $m[2];
        if (strlen($str) < 3) {
            $str .= substr($m[3], 0, 1);
            $m[3] = substr($m[3], 1);
            $replaces_num = 1;
        }
        else
            $replaces_num = floor(strlen($str) / 4);
        for ($i = 0; $i < $replaces_num; ++$i) {
            $pos1 = mt_rand(0, strlen($str) - 1);
            do {
                $pos2 = mt_rand(0, strlen($str) - 1);
            }
            while ($pos2 == $pos1);
            $repl_chr1 = $str{$pos1};
            $repl_chr2 = $str{$pos2};
            $str{$pos1} = $repl_chr2;
            $str{$pos2} = $repl_chr1;
        }
        return $m[1] . $str . $m[3];
    }
}
// USAGE
echo '<pre>';
$s = 'У женского мозга больше извилин
Тот факт, что у мужчин объем мозга больше, давал повод для бесконечных шуток на тему женского ума и интеллекта. ';
$t = new UnPendosCrypt($s);
echo $t->ФАс();
 
Сверху