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

    +73

    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
    public static function ParseContainer($s,$be,$en,$cb,$ret_beg=false,$re=false)
    	{
    		if(!is_callable($cb))
    			return$s;
    		$bl=strlen($be);
    		$el=strlen($en);
    		for(;;)
    		{
    			if(false===$bp=strpos($s,$be) or false===$ep=strpos($s,$en,$bp+1+$bl))
    				break;
    			$brp=strrpos(substr($s,0,$ep-$bp+1),$be);
    			if($brp>$bp)
    				$bp=$brp;
    			$ns=substr($s,$bp+($ret_beg ? 0 : $bl),$ep-$bp-($ret_beg ? 0 : $bl)+($re ? $el : 0));
    			$ns=call_user_func($cb,$ns);
    			$s=substr_replace($s,$ns,$bp,$ep-$bp+$el);
    		}
    		return$s;
    	}

    Запостил: T_ENGINE, 22 Мая 2012

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

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

    Ошибка компиляции комментария:
    1. Гости могут высказаться только в понедельник, среду, четверг или воскресение
    ava Где здесь C++, guest?!
    А не использовать ли нам bbcode?
    • [b]жирный[/b] — жирный
    • [i]курсив[/i] — курсив
    • [u]подчеркнутый[/u] — подчеркнутый
    • [s]перечеркнутый[/s] — перечеркнутый
    • [blink]мигающий[/blink] — мигающий
    • [color=red]цвет[/color] — цвет (подробнее)
    • [size=20]размер[/size] — размер (подробнее)
    • [code=<language>]some code[/code] (подробнее)
    Проверочный код