  !
[img]___[/img]
[size=_][/size] -      4  48

   :
[php]
//    SIZE  IMG
//    tags()
$var = preg_replace_callback('#\[size=([0-9]{1,2})\](.*?)\[/size\]#si',
							create_function(
											'$data',
                            				'if(intval($data[1])>48) {
                            					$data[1] = 48;
                            				} elseif (intval($data[1])<4) {
                            					$data[1] = 4;
                            				}
                            				return "<span style=\"font-size:{$data[1]}px\">{$data[2]}</span>";
                            				'
                            ), $var);
//      URL   IMG
$var = preg_replace_callback('`\\[url=((?:http|ftp)+s?://.+?)\\](.+?)\\[/url\\]|((?:http|ftp)+s?://(www.)?[0-9a-z\.-]+\.[0-9a-z]{2,6}[0-9a-zA-Z/\?\.\~&amp;_=/%\-\+:#]*)|\[img\]((?:http|ftp)+s?://[a-zA-Z0-9\-\_\+\.\%\~\/]+?\.(?:jpeg|jpe|jpg|gif|png|tga|tif|tiff|bmp))\[/img\]`', 'url_replace', $var);							
[/php]
    
[php]
//   w_gHide()      
function w_gHide($gh){
	// gHide valid finction by SunRise
	//       IMG  SunRise
	//     
	global $user_id, $rights;
	//   IMG
	if(preg_match('#\[img\](.*?)\[\/img\]#si', $gh))
	{
    	if(preg_match('#\[img\]((?:http|ftp)+s?://[a-zA-Z0-9\-\_\+\.\%\~\/]+?\.(?:jpeg|jpe|jpg|gif|png|tga|tif|tiff|bmp))\[\/img\]#si', $gh))
    	{
    		return preg_replace_callback('#\[img\]((?:http|ftp)+s?://[a-zA-Z0-9\-\_\+\.\%\~\/]+?\.(?:jpeg|jpe|jpg|gif|png|tga|tif|tiff|bmp))\[\/img\]#si',
    									 create_function(
    								 					'$data',
    								 					'$img = @getimagesize($data[1]);
														if(!empty($img) && is_array($img) && in_array($img[\'mime\'], array(\'image/gif\', \'image/jpeg\', \'image/png\', \'image/tga\', \'image/bmp\', \'image/tiff\')) && $img[0] > 10 && $img[1] > 10)
														{
															return \'[img]\' . $data[1] . \'[/img]\';
														}
														else
														{
															return \'[[red][b]   !!![/b][/red]]\';
														}'
									 	 ), $gh);
		}
		else
		{
            return preg_replace('#\[img\](.*?)\[\/img\]#si', '[[red][b]    !!![/b][/red]]', $gh);
		}
    }
    // *******************
	if(preg_match('#\[ghide=(.*?)\](.*?)\[\/ghide\]#si',$gh))
	{
	    if($rights>=2)
	    {
            return $gh;
	    }
	    else
	    {
	    	return '[ !]';
	  	}
	}
	elseif(preg_match('#\[ghide\](.*?)\[\/ghide\]#si',$gh))
	{
		return preg_replace('#\[ghide\](.*?)\[\/ghide\]#si', '[ghide=' . $user_id . ']\1[/ghide]', $gh);
	}
	else
	{
		return $gh;
	}
}

//        IMG
function url_replace($m) {
    //    URL ( FlySelf)
    //     IMG  SunRise
    if(isset($m[5]))
    {
		$matches = array('%3C','%3E','%26','%26','%22','%3A','%28','%29');//    < > & ' " : ( )  URL 
		$m[5] = str_replace($matches, '', $m[5]);
		return '<img src="'.$m[5].'" alt="'.$m[5].'" stryle="border:0" />';
    }
    else
    {
    	if (!isset($m[3]))
    	{
        	return '<a href="' . $_SERVER['DOCUMET_ROOT'] . '/ol.php?ol=' . urlencode(base64_encode($m[1])) . '">' . $m[2] . '</a>';
        }
    	else
    	{
    		$lText = '';
    		if(mb_strlen($m[3])>70) $lText = mb_substr($m[3],0,70) . '...'; else $lText = $m[3];
        	return '<a href="' . $_SERVER['DOCUMET_ROOT'] . '/ol.php?ol=' . urlencode(base64_encode($m[3])) . '">' . $lText . '</a>';
        }
    }
}
[/php]

    ()  .      ghide (     ),      .
    func.php,     .
//  SunRise - www.XSCLUB.ru