array (
exist => true,
max_lenght => 255,
default_prefix => 'http://',
prefix => '^http://|^https://',
),
msg => array (
err_url_to_long => 'Podany adres jest za długi.',
err_url_empty => 'Proszę podać adres strony (adres.php?url=ADRES).',
err_404 => '404 - Nie można otworzyć strony.',
),
);
/*------------------------------------------------------------------
AGLORYTM
------------------------------------------------------------------*/
IF(ISSET($url) and !empty($url))
{ $url = htmlspecialchars(stripslashes($url));
IF(strlen($url) > $cfg[url][max_lenght])
ECHO $cfg[msg][err_url_to_long];
ELSE(!ereg($cfg[url][prefix], $url))?$url = $cfg[url][default_prefix]
. EREG_REPLACE('[[:alpha:]]*://', '', $url):PRINT('');
IF(TRUE == $cfg[url][exist])
(!@FOPEN($url, 'r')) ? PRINT($cfg[msg][err_404]) : PRINT($url);
ELSE PRINT($url);
} ELSE ECHO $cfg[msg][err_url_empty];
//-------------------------------------------------------------------
echo "
\n";
$time = EXPLODE(" ",MICROTIME());
echo ROUND($time[1] + $time[0] - $GLOBALS[time1], 5);
?> sec.
Zalozenia
• dodawanie przedrostka http:// przed domena, jezeli takiego przedrostka nie posiada
• okreslenie maksymalnej dlugosci adresu strony
• filtrowanie adresu z niechcianych lub niepozadanych znakow
• skrypt pomija dodawanie w przypadku napodkania przedrostka typu: http:// lub https://
• przy blednych wpisach np. htttp://, ht:// itp., przedrostek jest najpierw usuwany, nastepnie dodawany przedrostek standardowy
• opcja sprawdzania czy podana strona istnieje
• prosta obsluga bledow