CAdvBanner :: ReplaceURL: Bitrix method

      
<?php 
//  CAdvBanner :: ReplaceURL()
//  /dist/bitrix/modules/advertising/classes/general/advertising.php:4040

    
public static function ReplaceURL($text$arBanner)
    {
        if (
$arBanner["FIX_CLICK"]=="Y")
        {
            
$BegPos=0;
            while (
preg_match("'(<A[^>]+?HREF[\t ]*=[\t ]*(\"|\\'))(.*?)((\"|\\'))'i",substr($text,$BegPos),$regs))
            {
                
$BegPos strpos($text$regs[1].$regs[3].$regs[5], $BegPos);
                if(
$BegPos===false) return '';
                
$strUrl CAdvBanner::GetRedirectURL($regs[3], $arBanner);
                
$text substr($text0$BegPos+strlen($regs[1])).$strUrl.substr($text,$BegPos+strlen($regs[1].$regs[3].$regs[5])-1);
                
$BegPos += strlen($strUrl) + strlen($regs[1]) + strlen($regs[5]) - strlen($regs[3]);
            }
        }
        return 
$text;
    }