2013-02-25 2 views
0

Im используя http://www.internoetics.com/2010/01/12/simple-whois-php-script/ PHP WhoIs сценарий, и мне нужно, чтобы сконфигурировать его для последней версии PHP, мне нужно преобразовать Ерег и eregi в preg_match и preg_replaceПреобразовать eregi в preg_match и ereg_replace к preg_replace

if ((!eregi('^[a-zA-Z0-9-]+\.([a-zA-Z]{2,4})$', $domain)) && (!eregi('^[a-zA-Z0-9-]+\.([a-zA-Z]{2,4})+\.([a-zA-Z]{2,4})$', $domain))) $arrErrors['domi'] = 'Domain name appears to be invalid.'; 

function makeClickableLinks($text) 
{ 
     $text = html_entity_decode($text); 
     $text = " ".$text; 
     $text = eregi_replace('(((f|ht){1}tp://)[[email protected]:%_\+.~#?&//=]+)', 
       '<a href="\\1" target=_blank>\\1</a>', $text); 
     $text = eregi_replace('(((f|ht){1}tps://)[[email protected]:%_\+.~#?&//=]+)', 
       '<a href="\\1" target=_blank>\\1</a>', $text); 
     $text = eregi_replace('([[:space:]()[{}])(www.[[email protected]:%_\+.~#?&//=]+)', 
     '\\1<a href="http://\\2" target=_blank>\\2</a>', $text); 
     $text = eregi_replace('([_\.0-9a-z-][email protected]([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3})', 
     '<a href="mailto:\\1" target=_blank>\\1</a>', $text); 
     return $text; 
} 

Благодарности

ответ

0

Для функций preg_ * вам нужно добавить только разделители, например / или # или другие, в начале и в конце шаблона.

Написать этот

if ((!preg_match('/^[a-z\d-]+\.([a-z]{2,4})$/i', $domain)) && (!preg_match('/^[a-z\d-]+\.([a-z]{2,4})+\.([a-z]{2,4})$/', $domain))) 
    echo $arrErrors['domi'] = 'Domain name appears to be invalid.'; 

function makeClickableLinks($text) 
{ 
     $text = html_entity_decode($text); 
     $text = " ".$text; 
     $text = preg_replace('#(((f|ht){1}tp://)[-a-z\[email protected]:%_\+.~\#?&//=]+)#', 
       '<a href="\\1" target=_blank>\\1</a>', $text); 
     $text = preg_replace('#(((f|ht){1}tps://)[-a-z\[email protected]:%_\+.~\#?&//=]+)#', 
       '<a href="\\1" target=_blank>\\1</a>', $text); 
     $text = preg_replace('#([[:space:]()[{}])(www.[-a-z\[email protected]:%_\+.~\#?&//=]+)#', 
     '\\1<a href="http://\\2" target=_blank>\\2</a>', $text); 
     $text = preg_replace('#([_\.\da-z-][email protected]([\da-z][\da-z-]+\.)+[a-z]{2,3})#', 
     '<a href="mailto:\\1" target=_blank>\\1</a>', $text); 
     return $text; 
} 
+0

вы можете показать, как это сделать? ebcause Я не знаком с выражениями reg ..:/ – Dance

+0

@Dance Я обновил свой ответ – Winston

+0

спасибо, работая как шарм! – Dance